kerdesek

hoyuka hoya hoyuka at c2.hu
Thu Sep 1 13:08:09 CEST 2005


Hali,

"En arra tippelek, hogy a program irojanak nem tanitottak meg a
pointereket..."

En arra tippelek, hogy lehet nem erted mi ez a 0 elemu tomb. Ez
gyakorlatilag semmi, nincs helyfoglalasa, a structura allokaciojanal dol
el, hogy mekkora lesz a tomb merete (malloc). Jo ez kicsit ganyolos, de a
C amugyis egy nagyon ganyolos nyelv pl. a kifinomult C++ vagy JAVA
programozashoz kepest.

Miert gondolod, hogy nem tanitottak a kod irojanak pointereket? Eleve
ilyen strukturat csak malloc-al erdemes letrehozni, ami eleve pointeres
dolog.

Szerintem:
uint8_t *info != uint8_t info[0] !!!!

Az uint8_t *info 4 bajtot foglal a structurabol (32bites pointerek
eseten), a uint8_t info[0] meg semmit.

udv.
hoyuka

Nagy Endre said:
>> Az eredeti celfordito a GCC. Ezuton is csokoltatom a GCC fejleszto
>> csapatot!
>
> A gcc azert ilyen, hogy sokmindent megegyen, amit mas forditoktol orokol
> (merthogy tobbnyire gcc-re valtanak, es nem forditva). De konnyen lehet
> rajta szigoritani: -Wall -pedantic opciok rengeteget segitenek. Azt is meg
> lehet neki adni, hogy melyik C szabvany szerint dolgozzon.
>
>> Az IAR csak butan nez, mert a 0 hosszu tomb hulyeseg, ha valtozhatna a
>
> A -pedantic-kal a gcc is szol erte:
>
> warning: ISO C forbids zero-size array `akarmi'
>
>> En tovabbra is arra tippelek, hogy uint8_t *info jo lesz, de majd
>> kiprobalom. Szerintem ez csak egy szokasos GCC szivatas, semilyen
>> mas fordito sem tamogatja. Ezert nem ertettem en sem :)
>
> En arra tippelek, hogy a program irojanak nem tanitottak meg a
> pointereket...
>
> Gumo
>
> -----------------------------------
>  Szponzorunk: http://tonerbolt.hu/
>

-------------------------------------
C2 MAIL: A nagy levelez-Õ.  http://mail.c2.hu




More information about the Elektro mailing list