[C++] Jak przekonwertować string na float?

W tym wpisie postaram się wytłumaczyć jak przekonwertować tekst zawierający w treści liczbę zmiennoprzecinkową. Do konwersji tekstu na liczbę zmiennoprzecinkową służy funkcja std::stof, która przyjmuje dwa argumenty, w tym jeden wymagany. Jak nie trudno się domyślić, wymaganym argumentem jest tekst do przekonwertowania na float. Kolejny argument to pozycja - wartość, która zostanie ustawiona na pozycję pierwszego znaku w podanym jako pierwszy argument ciągu znaków (domyślnie 0). Uwaga! Ta funkcja nie przekonwertuje ciągu na typ int. Aby przekonwertować string na typ int należy użyć funkcji std::stoi.

Zamiana typu string na float

Przykład:

#include <iostream>
#include <string>

int main() {
 
 std::string text_1 = "11.1";
 std::string text_2 = "5.2";
 std::string text_3 = "1,2,3";
 std::string text_4 = "4000";
 
 float int_type_1 = std::stof(text_1);
 float int_type_2 = std::stof(text_2);
 float int_type_3 = std::stof(text_3);
 float int_type_4 = std::stof(text_4);
 
 std::cout << int_type_1 << "\n"; // wyświetli: 11.1
 std::cout << int_type_2 << "\n"; // wyświetli: 5.2
 std::cout << int_type_3 << "\n"; // wyświetli: 1
 std::cout << int_type_4 << "\n"; // wyświetli: 4000
 
}

Komentarze

Popular

[HTML] Jak wstawić obrazek?

[PHP|HTML] Odświeżenie strony

[HTML] Jak wycentrować stronę?