logo

Atoi()-Funktion in C

In diesem Artikel werden wir das besprechen Abschleppen() Funktion in c mit ihren Beispielen.

Was ist Atoi()?

Der Abschleppen() Funktion konvertiert eine ganze Zahl Wert von a Zeichenfolge von Charakteren. Die Eingabezeichenfolge ist eine Zeichenfolge, die in einen numerischen Rückgabewert umgewandelt werden kann. Die Funktion stoppt das Lesen der Eingabezeichenfolge, wenn sie auf das erste Zeichen trifft, das sie nicht als Teil einer Zahl betrachtet. Es kann sich um das Nullzeichen am Ende der Zeichenfolge handeln. Der Abschleppen() Die Funktion unterstützt keine Exponenten und Dezimalzahlen.

Die Funktion int atoi( const char *str ) im C Die Bibliothek ändert das String-Argument str in eine Ganzzahl. Im Allgemeinen konvertiert die Funktion ein Zeichenfolgenargument in eine Ganzzahl. Die Funktion atoi() überspringt alle Leerzeichen am Anfang der Zeichenfolge. Außerdem werden die Zeichen als Zahlenteil konvertiert und angehalten, wenn das erste Nicht-Zahlenzeichen gefunden wird.

Atoi()-Bibliotheksfunktion

Die vordefinierte Bibliotheksfunktion atoi() in der C-Programmierung übernimmt die Konvertierung von Zeichenfolgen in Ganzzahlen. Die Funktion wird in der Header-Datei angegeben stdlib.h .

Prioritätswarteschlange C++

Syntax der Atoi()-Funktion

Die Syntax der Atoi()-Funktion kann wie folgt definiert werden:

Wo ist die Einfügetaste auf der Laptoptastatur?
 int atoi(const char *str) 

Parameter

An die Funktion wird nur ein Parameter, ein String, übergeben. Der wichtige Punkt ist, sich daran zu erinnern, dass die Zeichenfolge als Konstante empfangen wird. Die Funktion atoi() ändert niemals eine empfangene Zeichenfolge und gibt nur ihren transformierten ganzzahligen Wert zurück. Die Header-Datei 'stdlib.h' unterstützt alle Typumwandlungsfunktionen in der C-Sprache.

Rückgabewert

Wenn str eine gültige Eingabe ist, gibt die Funktion die Ganzzahl zurück, die der übergebenen Zeichenfolgennummer entspricht. Wenn str keine gültige Eingabe hat, geben die Funktionen den Wert Null zurück. Im Allgemeinen können Zeichenfolgen effektiv in Zahlen umgewandelt werden, einschließlich der folgenden Parameter:

  1. Saiten komplett bestehend aus ASCII Ziffern '0123456789' .
  2. Zeichenfolgen, die mit dem Zeichen beginnen '+' und bestehen vollständig aus ASCII
  3. Saiten komplett bestehend aus ASCII Ziffern und beginnend mit dem Zeichen '-' .

Die Funktion Atoi() arbeitet inkrementell. Mit anderen Worten: Es werden Zahlen erstellt, die nacheinander durch Zeichenfolgen dargestellt werden. Die Funktion bricht nur ab, wenn sie auf ein Nicht-ASCII-Zeichen trifft.

Die Funktion Atoi() gibt nach dem Breaking einen von zwei möglichen Werten zurück. Wenn die Funktion am Anfang der Zeichenfolge aufgerufen wird und keine Werte transformiert wurden, gibt sie 0 zurück. Andernfalls würde sie die aktuelle Zahl zurückgeben, die sie hat.

string zu int java

Beispiel 1:

Nehmen wir ein Beispiel, um die Funktion atoi() in C zu verstehen.

 #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); } 

Ausgabe: Nachdem wir diesen obigen Code ausgeführt haben, erhalten wir die Ausgabe wie unten gezeigt:

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

Beispiel 2:

In diesem Beispiel werden die negativen Zahlen verwaltet. Wenn das erste Zeichen ist '-' , setzen Sie das Vorzeichen als negativ und wandeln Sie dann den Rest der Zeichenfolge in eine Zahl um, indem Sie das Vorzeichen damit multiplizieren.

 #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; } 

Ausgabe: Nachdem wir diesen obigen Code ausgeführt haben, erhalten wir die Ausgabe wie unten gezeigt:

 Output = -23233 

Beispiel 3:

Nehmen wir ein anderes C-Programm, um die Zeichenfolge mit der Funktion Atoi() in eine Ganzzahl umzuwandeln.

 #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; } 

Ausgabe: Nachdem wir den obigen Code ausgeführt haben, erhalten wir die unten gezeigte Ausgabe:

CSS-Kommentar

Die Ausgabe ist:

 Enter any integer = abc Converted integer = 0 Enter any integer = 12221 Converted integer = 12221 Enter any integer = 1.1225112 Converted integer = 1