Informatyka - strona 12

Kurs programowania w C cz. 95

  • Politechnika Poznańska
  • prof. nadzw. PP dr hab. inż. Stefana Gocholewski
  • Informatyka
Pobrań: 0
Wyświetleń: 581

112 ROZDZIAŁ 17. WSKAŹNIKI (czyli np. znaku czy liczby) w pamięci komputera. Dokładniejszą definicję możesz znaleźć w  Wikipedii. Operowanie na wskaźnikach By stworzyć wskaźnik do zmiennej i móc się nim posługiwać należy przypisać mu odpowiednią wartość (adres obiektu, na jaki ma wskazyw...

Kurs programowania w C cz. 96

  • Politechnika Poznańska
  • prof. nadzw. PP dr hab. inż. Stefana Gocholewski
  • Informatyka
Pobrań: 7
Wyświetleń: 518

OPEROWANIE NA WSKAŹNIKACH 113 Aby dobrać się do wartości wskazywanej przez zmienną należy użyć unarnego ope- ratora  *  (gwiazdka), zwanego  operatorem wyłuskania : #include  int main (void) { int liczba = 80; int *wskaznik = &liczba; printf(&q...

Kurs programowania w C cz. 97

  • Politechnika Poznańska
  • prof. nadzw. PP dr hab. inż. Stefana Gocholewski
  • Informatyka
Pobrań: 0
Wyświetleń: 490

114 ROZDZIAŁ 17. WSKAŹNIKI ++ |komórka1| ++ || = (unsigned char) 255 ++ Gdybyśmy natomiast stworzyli inny wskaźnik do tego adresu tym razem typu  unsi- gned long*  to przy próbie odczytu odczytane zostaną dwa bajty z wartością zapisaną w zmiennej  unsigned int  oraz dodatkowe dwa bajty z niewiadomą...

Kurs programowania w C cz. 98

  • Politechnika Poznańska
  • prof. nadzw. PP dr hab. inż. Stefana Gocholewski
  • Informatyka
Pobrań: 7
Wyświetleń: 518

ARYTMETYKA WSKAŹNIKÓW 115 Podsumowując, różne wskaźniki to różne typy i nie należy beztrosko rzutować wy- rażeń pomiędzy różnymi typami wskaźnikowymi, bo grozi to nieprzewidywalnymi błę- dami. Do czego służy typ void*? Czasami zdarza się, że ni...

Kurs programowania w C cz. 99

  • Politechnika Poznańska
  • prof. nadzw. PP dr hab. inż. Stefana Gocholewski
  • Informatyka
Pobrań: 0
Wyświetleń: 511

116 ROZDZIAŁ 17. WSKAŹNIKI Wskaźniki można również od siebie odejmować, czego wynikiem jest  odległość dwóch wskazywanych wartości. Odległość zwracana jest jako liczba obiektów dane- go typu, a nie liczba bajtów. Np.: int a[] = {1, 2, 3, 5, 7}; int *ptr = &a[2]; int diff = ptr - a; /* diff ma w...

Kurs programowania w C cz. 100

  • Politechnika Poznańska
  • prof. nadzw. PP dr hab. inż. Stefana Gocholewski
  • Informatyka
Pobrań: 0
Wyświetleń: 553

GDY ARGUMENT JEST WSKAŹNIKIEM... 117 Stąd do trzeciej wartości można się dostać tak (komórki w tablicy numeruje się od zera): zmienna = tab[2]; albo wykorzystując metodę wskaźnikową: zmienna = *(tab + 2); Z definicji obie te metody są równoważne. Z definicji (z wyjątkiem użycia operatora sizeof) wart...

Kurs programowania w C cz. 101

  • Politechnika Poznańska
  • prof. nadzw. PP dr hab. inż. Stefana Gocholewski
  • Informatyka
Pobrań: 7
Wyświetleń: 581

118 ROZDZIAŁ 17. WSKAŹNIKI Zwróćmy uwagę na wywołanie func(&z);. Należy pamiętać, by do funkcji przekazać adres zmiennej a nie samą zmienną. Jeśli byśmy napisali func(z); to funkcja starałaby się zmienić komórkę pamięci o numerze 3. Kompilator

Kurs programowania w C cz. 103

  • Politechnika Poznańska
  • prof. nadzw. PP dr hab. inż. Stefana Gocholewski
  • Informatyka
Pobrań: 0
Wyświetleń: 469

120 ROZDZIAŁ 17. WSKAŹNIKI Wskaźniki na stałą wartość są przydatne między innymi w sytuacji gdy mamy duży obiekt (na przykład  strukturę  z kilkoma polami). Jeśli przypiszemy taką zmienną do innej zmiennej, kopiowanie może potrwać dużo czasu, a oprócz tego zostanie zajęte dużo pamięci. P...

Kurs programowania w C cz. 104

  • Politechnika Poznańska
  • prof. nadzw. PP dr hab. inż. Stefana Gocholewski
  • Informatyka
Pobrań: 0
Wyświetleń: 574

182 DODATEK A. INDEKS ALFABETYCZNY L •  labs() •  ldexp() •  ldiv() •  localeconv() •  localtime() •  log() •  log10() •  longjmp() M •  malloc() •  mblen() •  mbstowcs() •  mbtowc() •  memchr() •  memcmp() •  memcpy() •  memmove() •  memset() •  mktime() •  modf() O •  offsetof() P •  perror() •  p...

Kurs programowania w C cz. 106

  • Politechnika Poznańska
  • prof. nadzw. PP dr hab. inż. Stefana Gocholewski
  • Informatyka
Pobrań: 21
Wyświetleń: 623

122 ROZDZIAŁ 17. WSKAŹNIKI Ostatnią funkcją jest funkcja calloc(). Przyjmuje ona dwa argumenty: liczbę elementów tablicy oraz wielkość pojedynczego elementu. Podstawową różnicą pomiędzy funkcjami mal- loc() i calloc() jest to, że ta druga zeruje wartość przydzielonej pamięci (do wszystkich bajtów w...