C++-ban hogy kell egy karakter értékét számként venni?
Beírtam googlebe és 10-20mp alatt megtaláltam. Nehogy nehéz legyen...
Itt az ideje, hogy megtanulj Google-t vagy más keresőt használni. (Már bocsánat.)
Kérdés: Hogyan kerestél rá egyáltalán? Hát ha ezt a skill-t is tudjuk fejleszteni. :)
Itt a megoldas: but.ly/2msy2C1
A cimben u-t csereld le i-re.
"Ez mekkora gány már." - Ha te mondod...
std::stoi()
A részletes magyarázatot akkor kapod meg, ha ránézel az ASCII táblára. A C és C++ a char adattípusban az ASCII kódját tárolja az adott karakternek. Így lesz az '1'-ből 49.
Mint láthatod, az ASCII táblában a számjegyek növekvő sorrendben szerepelnek. 48 a '0', 49 az '1', ..., 57 pedig a '9'. A létező leggyorsabb megoldás így az, hogy a karakter kódjából kivonod a '0' karakter kódját:
int value = '9' - 48;
Ne felejtsd el, hogy itt most van egy implicit típuskonverzió char-ról int-re. Persze lehet szépíteni, hogy kevésbé tűnjön gányolásnak:
char value = '9' - '0';
"Nem mondtam, hogy könnyű lesz. Azt mondtam, igaz."
Morpheus (Mátrix)
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!