[linux] OFFTOPIC: cecko

Robert Varga niteshadow na hq.alert.sk
Úterý Červenec 18 15:17:54 CEST 2000


On Fri, Jun 23, 2000 at 04:57:39PM +0200, Matus fantomas Uhlar wrote:
> -> beriem spat moju otazku. Chybalo tam #include <string.h>, sranda ale je,
> -> ako je mozne, ze to vobec islo?
> 
> strdup vracia pointer a ty si ho priradoval do pointeru, Cecko si myslelo ze
> strdup vracia integer a papulovalo z integer priradujes do pointeru...

Ehmm. Dakujeme Fantomasovi sa obsiahle objasnenie.

Otazka bola preco to fungovalo, aj ked tam nebol include. Takze:

Pocas kompilacie ti to vyhodilo warning, lebo komplikator robil implicitnu
deklaraciu funkcie strdup. (== int strdup(...);).

Warning nieje nic podstatne (vacsinou), takze presiel k linkovaniu. Tvoj
program linkoval jednak voci glibc. Glibc vsak symbol strdup obsahuju a
teda tvoj program volal spravnu funkciu. A tym, ze si tam dal ten cast, tak
vsetko sedelo ako ma.

Keby sy to vsak kompiloval g++kom, tak by si uz mal smolu -- C++kove symboly
obsahuju vo svojom mene aj specifikaciu parametrov a navratovej hodnoty.
Takze v C++ int strdup(...); a char *strdup(const char *); su dve zasadne
odlisne veci a binarku by si nikdy neuvidel -- skoncil by si na Undefined
symbol-e. 

-- 
Kind regards,
Robert Varga
------------------------------------------------------------------------------
n na hq.sk                                    http://hq.sk/~niteshadow/gpgkey.txt
 
------------- další část ---------------
Netextová příloha byla odstraněna...
Jméno: [žádný popis není k dispozici]
Typ: application/pgp-signature
Velikost: 232 bytes
Popis: [žádný popis není k dispozici]
Url : http://lists.linux.sk/pipermail/linux/attachments/20000718/78cd4d49/attachment.bin 


Další informace o konferenci linux