C a promenne
Jakub Slajs
xslajsj
Středa Březen 17 14:31:27 CET 2004
> Ano samozrejme, ale to prece nevadi? Naopak, muzu pristupovat na libovolne
> misto pole. Jenom se jinak indexuje. Samozrejme musim vedet, co delam.
Spravne a protoze jste uvedl pouze jiny zapis bez dalsiho komentare, radeji
jsem to jeste rozvedl aby to bylo pro kazdeho naprosto zrejme.
> > Jeste k puvodnimu dotazu - v C se pole v podstate chape vzdy jako pointer,
> > takze pokud prekladac neumi optimalizovat praci s pointery, asi zadny lepsi
> > zpusob nevymyslite.
Kdyz uz jsme si tady udelali tohle okenko jazyka C, tak by bylo take dobre si
zopakovat v cem se vlastne lisi pole od pointeru (divili byste se kolik lidi
si mysli ze je to jedno a to same). Tedy vezte ze:
- operator sizeof vraci velikost pole (nikoli velikost ukazatele na pole)
- operator & vrati ukazatel na pole a ne ukazatel na prvni prvek
(ciselna hodnota je stejna ale lisi se typ)
- pole lze pouzit k inicializaci reference (C++)
Dalsim kamenem urazu jsou vicerozmerna pole. Prave ta utkvela predstava ze
pole = pointer vede k nasledujicim konstrukcim:
int **p = (int**) new int[3][4]; // CHYBA
spravne to ma byt:
int (*p)[4] = new int[3][4];
S pozdravem,
Jakub Slajs
_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com
Další informace o konferenci Hw-list