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

C Std Stold Std Stof Std Stod



I dag skal vi lære nogle af funktionerne i C++-strengen, og vi vil se, hvordan man konverterer strengværdierne ved at implementere flere eksempler.

C++ er et meget simpelt sprog, der er nemt at lære, fordi det er et objektorienteret programmeringssprog, der giver programmer en defineret struktur og muliggør kodelæsbarhed i samme program.

Introduktion

String er en af ​​datatyperne i C++, og det er en samling af flere elementer kendt som tegn. Der er mange funktionaliteter som C++ streng udfører, men her har vi nogle af funktionerne som er stold(), stof() og stod(). Disse strengfunktioner har de samme funktionaliteter, som bruges til at parse eller konvertere strengværdien til andre datatyper. Lad os nu se, hvordan disse funktioner vil fungere.







Std::std

Strengfunktionen std::stold() betyder at konvertere en strengværdi til en lang dobbelt.



Syntaks

Først vil vi skrive søgeordet 'long double', som viser, at vi konverterer værdien til en long double. Derefter vil vi skrive strengmetodenavnet, som vi vil udføre. I dette tilfælde er det stold() og derefter i funktionsparenteserne sender vi parametrene.







Parametre

str: input strengværdien, som vi ønsker at konvertere til den lange dobbelt.

pos: adressen på et heltal, der bruges til at holde det allerførste ukonverterede tegns indeks.



Returværdi

Til gengæld får vi værdien i long double type ved at konvertere inputstrengen.

Eksempel

Lad os begynde at implementere det første eksempel på stold()-funktionen. Først har vi brug for en C++ compiler til at skrive og udføre vores program.

I C++-programmet vil vi først inkludere header-filerne, så vi kan undgå at skrive koden gentagne gange og håndtere programmet ved at holde det præcist og fokuseret. Først vil vi skrive '#' tegnet, der vil lede compileren til at indlæse header-filen. Derefter vil vi skrive præprocessor-direktivet 'include', som bruges til at fortælle compileren at behandle header-filen før kompileringen af ​​det faktiske program. Derefter vil vi skrive header-filnavnet 'iostream', standard input-output-funktionen i C++. Vi vil erklære endnu en header-fil til brug af strengværdierne i programmet, som er '#include'.

#include

#inkluder

bruger navneområde std ;

int vigtigste ( )
{
streng str = '1.0545' ;
cout << 'Input-strengværdien er:' << str << ' \n ' ;

lang dobbelt -en = stædighed ( str ) ;
cout << 'Den resulterende lange dobbeltværdi er: ' << -en << ' \n ' ;

Vend tilbage 0 ;
}

Efter at have skrevet header-filen, lad os begynde at skrive den faktiske kodelinje for programmet. Først skriver vi funktionen main(). I C++ indeholder hvert program en main()-funktion, og programmet begynder med main()-funktionen. Når et C++-program udføres, modtager main()-funktionen øjeblikkelig udførelseskontrol. Derefter erklærede vi en variabel 'str', hvis datatype er 'streng', og derefter tildelte vi værdien til 'str', som er '1.0545'. For at udskrive værdien på brugerskærmen har vi brugt 'cout'-metoden og videregivet 'str'-variablen i den. Som du ser i slutningen af ​​'cout'-metoden, har vi brugt '\n' formatspecifikationen, så vi kan gå til den næste nye linje i programmet.

Vi skriver strengfunktionen, som vi skal implementere, som er stold()-funktionen. Først vil vi skrive datatypenavnet 'long double', som vi vil konvertere inputstrengen '1.0545' på. Derefter erklærer vi den nye variabel 'a', som vi vil gemme den lange dobbelte streng på. Derefter kaldte vi stold()-funktionen og sendte 'str' ​​som argumentet for funktionen, og så udskrev vi dette ved at bruge 'cout'-metoden.

Her er det ønskede output fra det ovenfor implementerede program:

Std::stof

Strengfunktionen std::stof() betyder at konvertere en strengværdi til et flydende kommatal.

Syntaks

Først vil vi skrive søgeordet 'float', som viser, at vi konverterer værdien til en float datatype. Og så vil vi skrive strengmetodenavnet, som vi vil udføre, som er stof()-funktionen. Derefter, i funktionsparenteserne, sender vi parametrene.

Parametre

str: input strengværdien, som vi ønsker at konvertere til den lange dobbelt.

idx: metoden sætter værdien af ​​objektet size-t, som denne markør peger på, til element i str, der kommer lige efter heltalsværdien. Alternativt kan denne mulighed være en nul-markør, i hvilket tilfælde den ikke ville blive brugt.

Returværdi

Til gengæld vil vi få værdien i den flydende taltype ved at konvertere inputstrengen.

Eksempel

Her er et andet eksempel på strengfunktionen stof(), der bruges til at parse strengværdien i float-type. Lad os starte med at forklare eksemplet, vi inkluderer altid først de funktionsrelaterede header-filer for de funktioner, som vi skal implementere i dette program. Her har vi '#include '-header-filen, der bruges til at indtaste data og ud af data osv. Derefter har vi en anden header-fil '#include ', der bruges, når vi arbejder med strengværdi. Vi brugte 'using namespace std', så enhver variabel eller funktion ikke kan dele den samme identitet i hele programmet.

#include

#inkluder

bruger navneområde std ;

int vigtigste ( )
{
streng val = '2541' ;
cout << 'Input-strengværdien er:' << val << ' \n ' ;

flyde res = støv ( val ) + 1000.576 ;
cout << 'Den resulterende flydende værdi er: ' << res << ' \n ' ;

Vend tilbage 0 ;
}

Herefter skriver vi main()-funktionen, hvori vi implementerer selve kodelinjen for det program, som vi ønsker at kompilere. I main() funktionslegemet har vi erklæret en variabel ved navn 'val' af typen streng, og vi har tildelt værdien '2541' til 'val'. Derefter udskrev vi det ved at bruge 'cout'-metoden. Og vi implementerede strengfunktionen, som er 'stof()'. Først vil vi skrive datatypenavnet 'float', som vi vil konvertere strengen på, og vi har en anden variabel 'res', der bruges til at gemme funktionsværdien i den. Vi skrev funktionen 'stof()', sendte strengvariablen 'val' i den, og vi tilføjede også en værdi i den. Vi udskrev det ved at bruge 'cout'-metoden og returnerede til sidst 0'et til hovedfunktionen.

Lad os se outputtet af ovenstående beskrivelsesillustration:

Std::stod()

Strengfunktionen std::stod() betyder at konvertere en strengværdi til en dobbelttype.

Syntaks

Først vil vi skrive søgeordet 'double', som viser, at vi konverterer værdien til en dobbelt datatype. Og så vil vi skrive strengmetodenavnet, som vi vil udføre, som er stod()-funktionen, og derefter i funktionsparenteserne sender vi parametrene.

Parametre

str: input strengværdien, som vi ønsker at konvertere til den lange dobbelt.

pos: adressen på et heltal, der bruges til at holde det allerførste ukonverterede tegns indeks.

Returværdi

Til gengæld får vi værdien i dobbelt type ved at konvertere inputstrengen.

Eksempel

Her er et eksempel på strengfunktionen stod() som bruges til at konvertere strengen til dobbelt type. I nedenstående kodestykke vil vi først inkludere header-filerne. Og så vil vi skrive 'navnerummet std' i det.

#include

#inkluder

bruger navneområde std ;

int vigtigste ( )
{
streng x = '835621' ;
cout << 'Input-strengværdien er:' << x << ' \n ' ;

dobbelt Med = stod ( x ) + 2.10 ;
cout << 'Den resulterende dobbeltværdi er: ' << Med << ' \n ' ;

Vend tilbage 0 ;
}

I main()-funktionen først vil vi erklære strengtypevariablen, som er 'x', og tildele værdien til den, så vi kan udføre stod()-funktionen. Derefter skriver vi typenavnet 'double', som vi ønsker at parse den givne streng 'x' på, og så har vi erklæret den nye dobbeltvariabel 'z' og gemt stod()-funktionen i den. I stod()-funktionen har vi sendt strengen 'x' i den og tilføjet '2.10'-værdien i den. Lad os se på outputtet af programmet og se, hvad vi får:

Konklusion

I denne artikel har vi lært, hvad der er streng i C++, og hvordan vi implementerer strengfunktionen i C++. Derefter har vi forklaret stold(), stof() og stod() funktionerne hver for sig, så der ikke er nogen forvirringspunkter for brugeren.