C++ std::stold std::stof std::stod

C Std Stold Std Stof Std Stod



Idag ska vi lära oss några av funktionerna i C++-strängen och vi kommer att se hur man konverterar strängvärdena genom att implementera flera exempel.

C++ är ett väldigt enkelt och lättlärt språk eftersom det är ett objektorienterat programmeringsspråk som ger program en definierad struktur och möjliggör kodläsbarhet i samma program.

Introduktion

String är en av datatyperna i C++ och det är en samling av flera element som kallas tecken. Det finns många funktioner som C++-strängen utför men här har vi några av funktionerna som är stold(), stof() och stod(). Dessa strängfunktioner har samma funktionalitet som används för att analysera eller konvertera strängvärdet till andra datatyper. Låt oss nu se hur dessa funktioner kommer att fungera.







Std::std

Strängfunktionen std::stold() betyder att konvertera ett strängvärde till en lång dubbel.



Syntax

Först kommer vi att skriva nyckelordet 'long double' som visar att vi konverterar värdet till en lång dubbel. Efter det kommer vi att skriva strängmetodens namn som vi vill utföra. I det här fallet är det stold() och sedan skickar vi parametrarna inom funktionsparenteserna.







Parametrar

str: det inmatade strängvärdet som vi vill konvertera till den långa dubbeln.

pos: adressen till ett heltal som används för att hålla det allra första okonverterade tecknets index.



Returvärde

I gengäld får vi värdet i lång dubbel typ genom att konvertera inmatningssträngen.

Exempel

Låt oss börja implementera det första exemplet på stold()-funktionen. Först behöver vi en C++-kompilator för att skriva och köra vårt program.

I C++-programmet kommer vi först att inkludera header-filerna så att vi kan undvika att skriva koden upprepade gånger och hantera programmet genom att hålla det exakt och fokuserat. Först kommer vi att skriva '#'-tecknet som styr kompilatorn att ladda rubrikfilen. Sedan kommer vi att skriva förprocessordirektivet 'inkludera' som används för att berätta för kompilatorn att bearbeta header-filen innan kompileringen av det faktiska programmet. Sedan kommer vi att skriva rubrikfilnamnet 'iostream', standard input-output-funktionen i C++. Vi kommer att deklarera ytterligare en rubrikfil för att använda strängvärdena i programmet som är '#inkludera'.

#include

#inkludera

använder namnutrymme std ;

int huvud ( )
{
sträng str = '1,0545' ;
cout << 'Inmatningssträngens värde är: ' << str << ' \n ' ;

lång dubbel a = envishet ( str ) ;
cout << 'Det resulterande långa dubbelvärdet är: ' << a << ' \n ' ;

lämna tillbaka 0 ;
}

Efter att ha skrivit rubrikfilen, låt oss börja skriva själva programmets kodrad. Först skriver vi funktionen main(). I C++ innehåller varje program en main()-funktion och programmet börjar med main()-funktionen. När ett C++-program körs får funktionen main() omedelbar exekveringskontroll. Sedan deklarerade vi en variabel 'str' ​​vars datatyp är 'sträng' och sedan tilldelade vi värdet till 'str' ​​som är '1.0545'. För att skriva ut värdet på användarskärmen har vi använt 'cout'-metoden och skickat 'str'-variabeln i den. Som du ser i slutet av 'cout'-metoden har vi använt '\n' formatspecifikationen så att vi kan gå till nästa nya rad i programmet.

Vi skriver strängfunktionen som vi ska implementera som är stold()-funktionen. Först kommer vi att skriva datatypnamnet 'long double' som vi vill konvertera indatasträngen '1.0545' på. Sedan deklarerar vi den nya variabeln 'a' som vi vill lagra den långa dubbla strängen på. Sedan anropade vi stold()-funktionen och skickade 'str' ​​som argument för funktionen och sedan skrev vi ut detta genom att använda 'cout'-metoden.

Här är den önskade resultatet av det ovan implementerade programmet:

Std::substans

Strängfunktionen std::stof() betyder att konvertera ett strängvärde till ett flyttal.

Syntax

Först kommer vi att skriva nyckelordet 'float' som visar att vi konverterar värdet till en flytande datatyp. Och sedan kommer vi att skriva strängmetodnamnet som vi vill utföra, vilket är stof()-funktionen. Sedan, inom funktionsparentesen, skickar vi parametrarna.

Parametrar

str: det inmatade strängvärdet som vi vill konvertera till den långa dubbeln.

idx: metoden ställer in värdet på objektet size-t som denna pekare pekar på till element i str som kommer precis efter heltalsvärdet. Alternativt kan det här alternativet vara en nollpekare, i vilket fall det inte skulle användas.

Returvärde

I gengäld får vi värdet i flyttalstyp genom att konvertera inmatningssträngen.

Exempel

Här är ett annat exempel på strängfunktionen stof() som används för att analysera strängvärdet till flyttyp. Låt oss börja med att förklara exemplet, vi inkluderar alltid först de funktionsrelaterade rubrikfilerna för de funktioner som vi ska implementera i det här programmet. Här har vi '#include '-huvudfilen som används för att mata in data och ut data etc. Sedan har vi en andra rubrikfil '#include ' som används när vi arbetar med strängvärde. Vi använde 'using namespace std' så att någon variabel eller funktion inte kan dela samma identitet i hela programmet.

#include

#inkludera

använder namnutrymme std ;

int huvud ( )
{
sträng val = '2541' ;
cout << 'Inmatningssträngens värde är: ' << val << ' \n ' ;

flyta res = damm ( val ) + 1 000 576 ;
cout << 'Det resulterande flytvärdet är: ' << res << ' \n ' ;

lämna tillbaka 0 ;
}

Efter detta skriver vi funktionen main() där vi implementerar själva kodraden för programmet som vi vill kompilera. I funktionskroppen main() har vi deklarerat en variabel med namnet 'val' av typen sträng och vi har tilldelat värdet '2541' till 'val'. Sedan skrev vi ut det genom att använda 'cout' -metoden. Och vi implementerade strängfunktionen som är 'stof()'. Först kommer vi att skriva datatypnamnet 'float' som vi vill konvertera strängen på och vi har en annan variabel 'res' som används för att lagra funktionsvärdet i den. Vi skrev funktionen 'stof()', skickade strängvariabeln 'val' i den, och vi lade också till ett värde i den. Vi skrev ut det med 'cout'-metoden och returnerade till slut 0:an till huvudfunktionen.

Låt oss se resultatet av ovanstående beskrivning:

Std::stod()

Strängfunktionen std::stod() betyder att konvertera ett strängvärde till en dubbeltyp.

Syntax

Först kommer vi att skriva nyckelordet 'dubbel' som visar att vi konverterar värdet till en dubbel datatyp. Och sedan kommer vi att skriva strängmetodnamnet som vi vill utföra, vilket är funktionen stod(), och sedan skickar vi parametrarna inom funktionsparenteserna.

Parametrar

str: det inmatade strängvärdet som vi vill konvertera till den långa dubbeln.

pos: adressen till ett heltal som används för att hålla det allra första okonverterade tecknets index.

Returvärde

I gengäld får vi värdet i dubbel typ genom att konvertera inmatningssträngen.

Exempel

Här är ett exempel på strängfunktionen stod() som används för att konvertera strängen till dubbel typ. I koden nedan kommer vi först att inkludera rubrikfilerna. Och sedan kommer vi att skriva 'namespace std' i den.

#include

#inkludera

använder namnutrymme std ;

int huvud ( )
{
sträng x = '835621' ;
cout << 'Inmatningssträngens värde är: ' << x << ' \n ' ;

dubbel Med = stod ( x ) + 2.10 ;
cout << 'Det resulterande dubbla värdet är: ' << Med << ' \n ' ;

lämna tillbaka 0 ;
}

I main()-funktionen kommer vi först att deklarera strängtypvariabeln som är 'x' och tilldela värdet till den så att vi kan utföra stod()-funktionen. Sedan skriver vi typnamnet 'double' som vi vill analysera den givna strängen 'x' på och sedan har vi deklarerat den nya dubbelvariabeln 'z' och lagrat stod()-funktionen i den. I funktionen stod() har vi skickat strängen 'x' i den och lagt till värdet '2.10' i den. Låt oss titta på resultatet av programmet och se vad vi får:

Slutsats

I den här artikeln har vi lärt oss vad som är sträng i C++ och hur vi implementerar strängfunktionen i C++. Sedan har vi förklarat funktionerna stold(), stof() och stod() separat så att ingen förvirring lämnas kvar för användaren.