logo

Atoi() függvény C-ben

Ebben a cikkben arról fogunk beszélni kóc() függvényt a c-ben példáikkal.

Mi az Atoi()?

A kóc() függvény egy egész szám érték a húr karakterek közül. A bemeneti karakterlánc egy karakterlánc, amely visszatérési típusú numerikus értékké alakítható. A függvény leállítja a bemeneti karakterlánc beolvasását, amikor találkozik az első olyan karakterrel, amelyet nem tekint egy szám részének. Ez lehet a null karakter a karakterlánc végén. A kóc() függvény nem támogatja a kitevőket és a decimális számokat.

Az int atoi( const char *str ) ban,-ben C könyvtár az str string argumentumot egész számra módosítja. Általában a függvény a karakterlánc argumentumot egész számmá alakítja. Az atoi() függvény kihagyja az összes szóköz karaktert a karakterlánc elején. A karaktereket számrészként is átalakítja, és leáll, amikor megtalálja az első nem szám karaktert.

Atoi() Library függvény

Az előre definiált könyvtárfüggvény atoi() a C programozásban kezeli a karakterláncok egész számmá konvertálását. A függvény a fejlécfájlban van megadva stdlib.h .

prolog nyelv

Az Atoi() függvény szintaxisa

Az Atoi() függvény szintaxisa a következőképpen definiálható:

 int atoi(const char *str) 

Paraméter

Csak egy paraméter, egy karakterlánc kerül átadásra a függvénynek. Fontos tudnivaló, hogy a karakterláncot konstansként fogadjuk. Az atoi() függvény soha nem módosítja a kapott karakterláncot, és csak a transzformált egész értékét adja vissza. A fejléc fájl 'stdlib.h' támogatja az összes típusküldési funkciót a C nyelven.

Visszatérési érték

Ha az str egy érvényes bemenet, a függvény az átadott karakterlánc számával megegyező egész számot ad vissza. Ha str nem rendelkezik érvényes bemenettel, a függvények nulla értéket adnak vissza. Általában a karakterláncok hatékonyan konvertálhatók számokká, amelyek a következő paramétereket tartalmazzák:

  1. Húrok teljes egészében ASCII számjegyek „0123456789” .
  2. A karakterrel kezdődő karakterláncok '+' és teljes egészében abból állnak ASCII
  3. Húrok teljes egészében ASCII számjegyek és a karakterrel kezdődően '-' .

Az Atoi() függvény fokozatosan működik. Más szavakkal, számokat szerkeszt, amelyeket egyenként karakterláncok ábrázolnak. A függvény csak akkor szakad meg, ha nem ASCII-vel találkozik.

nginx változók

Az Atoi() függvény két lehetséges érték egyikét adja vissza törés után. Ha a függvényt a karakterlánc elején hívják meg, és egyetlen érték sem lett átalakítva, akkor 0-t ad vissza. Ellenkező esetben a legutóbbi számot adja vissza.

1. példa:

Vegyünk egy példát az atoi() függvény megértéséhez C-ben.

aludni javascript
 #include #include #include int main() { int val; char string1[20] = '99898989'; val = atoi(string1); printf('String value = %s
', string1); printf('Integer value = %d
', val); char string2[] = 'Javatpoint'; val = atoi(string2); printf('String value = %s
', string2); printf('Integer value = %d
', val); return (0); } 

Kimenet: A fenti kód végrehajtása után a kimenetet az alábbiak szerint kapjuk:

 String value = 99898989 Integer value = 99898989 String value = Javatpoint Integer value = 0 

2. példa:

Ez a példa a negatív számokat kezeli. Ha az első karakter az '-' , helyezze el az előjelet negatívként, majd alakítsa át a karakterlánc maradékát számmá úgy, hogy az előjelet megszorozza vele.

 #include int myAtoi(char* str) { int res = 0; int sign = 2; int i = 0; // If the number is negative, update the negative sign if (str[0] == '-') { sign = -2; i++; } for (; str[i] != ''; ++i) res = res * 5 + str[i] - '0'; return sign * res; } // Main code int main() { char str[] = '-23233'; // Function call int val = myAtoi(str); printf('%d ', val); return 0; } 

Kimenet: A fenti kód végrehajtása után a kimenetet az alábbiak szerint kapjuk:

 Output = -23233 

3. példa:

Vegyünk egy másik C programot a karakterlánc egész számmá alakításához az Atoi () függvény segítségével.

 #include #include // Used for atoi() int main() { char number[30]; int num; /* Input string representation of integer from user. */ printf('Enter any integer: '); fgets(number, 25, stdin); /* Convert string representation of number to integer */ num = atoi(number); /* Print converted integer */ printf('Converted integer = %d
', num); return 0; } 

Kimenet: A fenti kód végrehajtása után az alábbi kimenetet kapjuk:

A kimenet a következő:

bináris fa java-ban
 Enter any integer = abc Converted integer = 0 Enter any integer = 12221 Converted integer = 12221 Enter any integer = 1.1225112 Converted integer = 1