PK%20W6.pdf

(173 KB) Pobierz
PK W6
UCZELNIA WARSZAWSKA
Kierunek INFORMATYKA I EKONOMETRIA
Programowanie komputerów
r.a. 2007/2008
Prowadz ą cy: dr hab. in Ŝ . Kazimierz Worwa, prof. UW MSC
3206174.003.png 3206174.004.png
Lokalizacjaplikówdowykładów
¦ http://members.lycos.co.uk/pkjw84/kw/
¦ logowanie:
Û nazwa u Ŝ ytkownika 2007/2008
Û hasło kw
Programowanie komputerów
2
3206174.005.png
Wykład6:Strukturyiunie
¦ Dokończenie wykładu 5: wskaźniki wielokrotne
¦ Typy rekordowe:
Struktury
Unie
¦ Typy wyliczeniowe
Programowanie komputerów
3
3206174.006.png
Arytmetykawskaźników
¦ Przeanalizuj i wyjaśnij poniŜszy kod:
int x=1, y, z[10];
int *ip, *iq;
ip = &x;
y = *ip;
*ip = 0;
*ip += 1;
y = *ip+2;
ip = &z[0];
iq = ip;
// ip wskazuje na x
// y=1
// x=0
// x=1
// y=3
// ip wskazuje na z[0]
// iq wskazuje na z[0]
Programowanie komputerów
4
3206174.001.png
Arytmetykawskaźników
¡ Przykład operacji dla typu prostego:
¨ int *px;
¨ px += 2;
¡ px = ( adres wskazywany przez px) + (2 * rozmiar obiektu
wskazywanego przez px);
¡ np. dla px równego 3000 i rozmiaru 4 (dla int):
¨ 3000 + 2 * 4 = 3008;
¡ Przykład dla tablicy:
¨ int a[4];
¨ int *pa;
¨ pa = a; /* lub pa=&a[0]; */
F pa ++;
pa
3000 3004 3008 3012
a[0] a[1] a[2] a[3]
/*pa wskazuje na a[1] */
F pa = pa+2;
/*pa wskazuje na a[3] */
F pa --;
/*pa wskazuje na a[2] */
Programowanie komputerów
5
3206174.002.png
Zgłoś jeśli naruszono regulamin