Hvad er atoi() i C++

Hvad Er Atoi I C



Programmører bruger ofte C++-funktionen bugsere() at omdanne en streng eller tegnarray til et heltal. Ved behandling af brugerinput eller konvertering af data fra en fil eller database, er denne funktion meget brugt. Dens navn, ASCII to Integer, henviser til processen med at omdanne en streng af ASCII-tegn til et heltal.

Syntaks for atoi() Funktion

Syntaksen for bugsere() funktion i C++ er som følger:

int anhænger ( konst char * str )

Den streng, der skal ændres til et heltal, er angivet af 'str' mulighed. Det sendes som en konst char pointer. Indtil den finder det første tegn uden mellemrum, undersøger funktionen strengen. Konverteringen af ​​strengens tal starter derefter, men den stopper, når den støder på et ikke-numerisk tegn. Med andre ord ændrer den strengens første par numeriske tegn til et heltal.







Programmører kan bruge bugsere() metode til at håndtere tidskrævende opgaver i forbindelse med behandling af brugerinput. Det kan bruges til at konvertere en brugers input til et heltal, før der udføres beregninger. Da det er en komponent i C-standardbiblioteket, er der ikke inkluderet yderligere header-filer. Følgende kode viser, hvordan du bruger bugsere() funktion i C++:



#include
#include
ved brug af navneområde std ;

int vigtigste ( ) {
char * str = '124' ;
int på en = anhænger ( str ) ;
cout << på en << endl ;
Vend tilbage 0 ;
}

I ovenstående eksempel er strengen '124' er indeholdt i tegnarrayet 'str' . Vi konverterede derefter teksten til et heltal ved hjælp af bugsere() funktion og gemte resultatet i variablen 'på en'. Heltalsværdien, der svarer til strengen '124' returneres af dette funktionskald.



Produktion





Begrænsninger af atoi() i C++

Det bugsere() metoden har flere begrænsninger, selvom den er nem at bruge. Denne funktions manglende evne til at transformere tekster, der indeholder numeriske værdier, som f.eks '124' , i heltal er en af ​​dens begrænsninger. Funktionen returnerer 0, hvis den medfølgende streng indeholder ugyldige tegn, som f.eks '12a4' . Desuden vil funktionen returnere en udefineret værdi, hvis den leverede streng er længere end det største tilladte heltal.



Der er ingen proces med fejlkontrol af bugsere() fungere. Funktionen vil stadig omdanne de første par numeriske tegn i strengen til heltal, selvom strengen indeholder ikke-numeriske tegn og se bort fra resten. Når du leverer en streng til en funktion, er det afgørende at sikre, at den kun indeholder numeriske tegn.

Konklusion

C++ bugsere() er en vigtig funktion til at behandle brugerinput og konvertere tegnarrays eller strenge til heltal. Selvom det har visse begrænsninger, er det stadig en fordel at have denne funktion i din programmeringsværktøjskasse. Når det bruges korrekt, kan det hjælpe dig med at spare en masse tid og besvær, når du udvikler programmer, der håndterer numeriske tal fra brugerinput eller eksterne datakilder.