Witam,
utrwalam wiadomości na temat wskaźników i chciałbym się upewnić czy mam rację.
Mam taki prosty kod jak na listingu poniżej.
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Funkcja fun jako argument przyjmuje wskaźnik na uint32_t, po wejściu do funkcji fun przepisuję do zmiennej lokalnej wartość i wysyłam na terminal wartość 500. Wszystko elegancko działa.
Teraz drugi przypadek. Robię podobnie tylko parametrem jest teraz struktura:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Na poczatku tworzę strukturę, następnie pisze deklarację funkcji. W kolejnym kroku inicjalizuje strukturę i wywołuję w pętli głównej.
Jak poprzednio, w funkcji fun tworzę taki sam typ strukturalny i w kolejnym kroku przypisuję wskaźnik, na wcześniej ustawioną globalną strukturę. Ale przez takie przypisanie: lokalny_parametr = *param; pola struktury się nie "ustawią" na wartości takie jak w zmiennej globalnej prawda?