型変換 パート2
CoddyのC++ジャーニー「基礎」セクションの一部。レッスン 15/74。
C++では、数値を文字列に変換したり、その逆を行ったりできます。値を文字列に変換するには、std::to_string()関数を使用できます:
int number = 789;
bool isValid = true;
string text1 = to_string(number); // 「789」になる
string text2 = isValid ? "true" : "false"; // 「true」になるto_string() を使って double を string に変換すると、元の number にそれほど多くの小数点以下の桁数がなくても、デフォルトでは小数点以下6桁が表示されます。
例:
double n1 = 789.0;
string text1 = to_string(n1);
// "789.000000" になる
double n2 = 789.5;
string text2 = to_string(n2);
// "789.500000" になる
double n3 = 789.123;
string text3 = to_string(n3);
// "789.123000" になるstringを別の型に変換するには、いくつかの方法があります。
String to Integer:
string numberText = "123";
int number = stoi(numberText); // 123になるString to Double:
string decimalText = "45.67";
double decimal = stod(decimalText); // 45.67になる注: 文字列を数値に変換するとき、これらの関数は文字列の先頭から、可能な限り多くの有効な文字を読み取ります。文字列が無効な文字で始まる場合にのみ、エラーをスローします:
string validStart = "42abc";
int number = stoi(validStart); // 42になる(末尾の文字は無視される)
string invalidStart = "abc";
int number2 = stoi(invalidStart); // これはエラーをスローします自分で試してみよう
このレッスンにはコードチャレンジは含まれていません。
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
基礎のすべてのレッスン
自分で練習してみよう: C++オンラインコンパイラ