PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : gets soll nicht verwendet werden???



namous
15-07-2002, 20:07
wenn ich was mit gcc compilieren will bringt er immer die warnung das gets nicht verwendet werden soll. Mich interessiert es nur so an rande, denn die programme funktionieren trotzdem. als ersatz verwende ich immer scanf, is das ne gute alternative??

Danke

anda_skoa
15-07-2002, 20:24
Das liegt daran, dass gets keine Längenangabe ermöglich, es kann also mehr gelesen werden, als Speicher im Puffer vorhanden ist.

Das ist ein sogenannter Bufferoverrun.

Mit fgets kann man das umgehen.

Ciao,
_

Lin728
15-07-2002, 21:15
scanf("%100s", &irgendeinarraymit-hundertein-zeichen);

anda_skoa
15-07-2002, 21:22
Original geschrieben von ceisserer

scanf("%100s", &irgendeinarraymit-hundertein-zeichen);


Auch nicht besser oder schlechter als fgets, oder?



Nimm Java, da gibts sowas nicht :-)


In C++ auch nicht, aber das ist ja nicht der Punkt.
Wenn er bisher gets verwendet hat, ist das sicher C :rolleyes:



(Geh ich euch schon auf den geist)


Ein bischen :D

Übrigens, gute Leistung, hast es in den KC Wine geschafft :cool:

Ciao,
_

Lin728
16-07-2002, 19:03
.…...............

anda_skoa
16-07-2002, 19:13
Original geschrieben von ceisserer
@anda_skoa:
Wow, ich soll was geschafft habe?! Is sicher nu ne verarsche :-)
Was ist denn bitte der KC WINE. Is das ein loosergroup-synonym?


Der Kernel Cousin Wine, eine wöchentliche Zusammenfassung der Highlights in den Wine mailinglisten:
http://kt.zork.net/wine/latest.html#6

Ciao,
_

Lin728
16-07-2002, 21:21
.....................