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 | 837 (715) | Shinobi |
» | Dev C++ ne zažene .exe datotekeOddelek: Programiranje | 2472 (2131) | eric_cartman |
» | [C++][Naloga] Tekstovne datoteke, realna številaOddelek: Programiranje | 4051 (3667) | Gundolf |
» | Kdaj uporabiti izjeme?Oddelek: Programiranje | 1699 (1580) | Gundolf |
» | Coding StyleOddelek: Programiranje | 3466 (2658) | 64202 |