Forum » Programiranje » [C] atoi() problem
[C] atoi() problem
atasmrk ::
Naletel sem na slednjo situacijo:
atoi() vrne intiger stringa. Vse v redu. Kaj pa ce je string "0"? Sicer bo funkcija vrnila 0, tako kot je treba, ampak to je za to funkcijo tudi pokazatelj napake. V mojem problemu pa nujno potrebujem to preverjanje, plus tega se z veliko verjetnostjo v stringu pojavi nicla.
Kako se resi tak problem?
atoi() vrne intiger stringa. Vse v redu. Kaj pa ce je string "0"? Sicer bo funkcija vrnila 0, tako kot je treba, ampak to je za to funkcijo tudi pokazatelj napake. V mojem problemu pa nujno potrebujem to preverjanje, plus tega se z veliko verjetnostjo v stringu pojavi nicla.
Kako se resi tak problem?
64202 ::
int x; if(sscanf(str, "%d", &x) == 1) { /* ok */ } else { /* not ok */ }
I am NaN, I am a free man!
sid_dabster ::
64202: ok, vendar se bodo CodeGuard in podoba orodja (ce jih doticni morda uporablja) pritozevala s Function Failure, ce bo prisel v sscanf string, ki ne ustreza podanemu patternu.
Fallen beyond all grace deeper and deeper
The sound of her own blood dripping
Like sacred tears from a bleeding rose...( Embraced, Within)
The sound of her own blood dripping
Like sacred tears from a bleeding rose...( Embraced, Within)
64202 ::
sid: Codeguard je potem buggy, ne bi smel tega javljat. Moral bi pa javit nepreverjanje vrednosti funkcije (kot to dela recimo lint).
I am NaN, I am a free man!
atasmrk ::
64202: hvala za namig.
sid: ne uporabljam CodeGuard-a, tako da me to ne skrbi.
Sicer pa hvala.
sid: ne uporabljam CodeGuard-a, tako da me to ne skrbi.
Sicer pa hvala.
sid_dabster ::
@atasmrk: "ne uporabljam CodeGuard-a"
Naj tako tudi ostane .
Naj tako tudi ostane .
Fallen beyond all grace deeper and deeper
The sound of her own blood dripping
Like sacred tears from a bleeding rose...( Embraced, Within)
The sound of her own blood dripping
Like sacred tears from a bleeding rose...( Embraced, Within)
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | [C] Razbitje stringa s pomočjo indeksovOddelek: Programiranje | 816 (694) | Shinobi |
» | Dev C++ ne zažene .exe datotekeOddelek: Programiranje | 2442 (2101) | eric_cartman |
» | [C++][Naloga] Tekstovne datoteke, realna številaOddelek: Programiranje | 4002 (3618) | Gundolf |
» | Kdaj uporabiti izjeme?Oddelek: Programiranje | 1684 (1565) | Gundolf |
» | Coding StyleOddelek: Programiranje | 3447 (2639) | 64202 |