Aktywne Wpisy

WielkiNos +441
Treść przeznaczona dla osób powyżej 18 roku życia...

WielkiNos +245
Czaicie, że lewacy są tak niedouczeni, że nie ogarnęli jeszcze, że pocisk porusza się szybciej niż dźwięk?
Pocisk z karabinu porusza się z prędkością około 1000m/s. Prędkość dźwięku to 360m/s. Czyli pocisk doleci do celu około 3 razy szybciej niż usłyszymy dźwięk wystrzału.
#trump #bekazlewactwa #militaria #usa #teoriespiskowe
Pocisk z karabinu porusza się z prędkością około 1000m/s. Prędkość dźwięku to 360m/s. Czyli pocisk doleci do celu około 3 razy szybciej niż usłyszymy dźwięk wystrzału.
#trump #bekazlewactwa #militaria #usa #teoriespiskowe
źródło: temp_file6774865494735531012
Pobierz




test.h
bool* isMainWindowOpen;test.cpp
isMainWindowOpen = true<-- tu mi wywala błąd że wartość "bool" nie może zostać przypisana do zmiennej "bool*"#cpp #programowanie
@mamniciwszystko:
W C++, przypisanie wartości do zmiennej typu bool jest proste. Jednak w Twoim przypadku masz wskaźnik (bool*) zamiast samej zmiennej typu bool. Wskaźnik wskazuje na adres pamięci, a nie przechowuje bezpośrednio wartości logicznej. Dlatego otrzymujesz błąd.
Jeśli chcesz przypisać wartość true do wskaźnika isMainWindowOpen, musisz najpierw utworzyć zmienną typu bool i przypisać jej wartość true. Następnie możesz przypisać adres tej zmiennej
bool* isMainWindowOpen;int z = true;
isMainWindowOpen = reinterpret_cast<bool*>(&z);
*isMainWindowOpen = trueale licz się z tym że jeśli wcześniej nie zaalokowałeś pamięci dla isMainWindowOpen to program się skompiluje ale w trakcie wykonywania rzuci segmentation faultWskaźnik co najwyżej wskazuje na zmienną. W sobie może zatem zawierać adres jakiejś komórki pamięci, a nie wartość zmiennej (która jest pod jakimś adresem).
Coś tam próbuję się nauczyć, dlatego takie głupie pytanie, bo dla większości to pewno błachostka.
bool* isMainWindowOpen;-> wskaźnik na zmienną typu boolisMainWindowOpen = true-> zmiana wskaźnika naxa dokładniej to próba zmiana adresu na który wskazuje wskaźnik w pamięci*isMainWindowOpen = true-> zmiana wartości pod adresem na który wskazuje wskaźnikisMainWindowOpeni to jest coś o co ci chodziło@j557: ... dokąd zmierzamy..
Komentarz usunięty przez autora
Typy mają się zgadzać. Jeżeli chcesz trzymać wartość true/false, potrzebujesz bool. Jeżeli chcesz trzymać adres to istniejącej gdzieś zmienne typu bool, potrzebujesz bool*.
Zapytaj chatgpt to dostaniesz zapewne wszystko ładnie wyjaśnione, jeżeli masz block na zrozumieniu wskaźników.
isMainWindowOpen[0] = true;( ͡° ͜ʖ ͡°)ノ⌐■-■
źródło: image
Pobierz@Defined: dopowiem jeszcze, isMainWindowOpen to wskaźnik, w pamięci zajmuje coś w stylu 0xAA5441 albo jakąś inną wartość, Ty mu chcesz tu przypisać wartość true czyli 0x01 co kompilator wychwytuje, oczywiście mógłbyś to zrobić castem (bool*) true i wtedy wskaźnikowi przypisałbyś wartość 0x01 ale program wykrzaczy się bo ten adres dla systemu to w 99% jakaś
@horus666: do tego że o prace w C/C++ w przyszłości nie będę musiał się martwić xD
bool*iint*.