Diskusijos apie laisvąsias programas

Kitkas => Programavimas => Temą pradėjo: ristinak 2006 m. Birželio 05 d. 20:28:30

Antraštė: char --> int C kalboje
Parašė: ristinak 2006 m. Birželio 05 d. 20:28:30
Sveiki,

man reikia C kalboje iš char tipo kintamojo gauti int tipo kintamąjį,

pvz. char c = "8";

Funkcijos atoi (&c) bei (int) c netinka, nes pirmu atveju gautas sveikasis skaičius bus lygus 0, o antru atveju aš gausiu ne skaičių 8, kurio man reikia, o raidės '8' ascii kodą.

Prašau pasidalinkite patirtimi ir samprotavimais, mat aš toli gražu ne žinovė.
Antraštė: char --> int C kalboje
Parašė: Vytas 2006 m. Birželio 06 d. 09:05:35
C kalboje skaičių ir simbolių tipai kaip ir sutampa, man rodos paprasčiausia būtų

char c = '8';
int i = c - '0';

dar galima pridėti patikrinimą
if (c >= '0' && c <= '9') ar pan
Antraštė: char --> int C kalboje
Parašė: rick 2006 m. Spalio 19 d. 17:28:35
atoi(char *str) kaip parametra priima char tipo masyva o ne viena simboli, taigi teisingai daryti taip:
char c[]="8";
atoi(c);