數字字元 在C 中將字串轉換為數字

2021-10-16 10:02:02 字數 1436 閱讀 2320

有許多情況需要將數字轉換為字串或將字串轉換為數字。本文中提到了一些實現此任務的方法。

將字串轉換為數字

方法1:使用stringstream類或sscanf()

方法2:使用stoi()或atoi()進行字串轉換

方法3:使用boost lexical_cast

boost庫提供了乙個內建函式lexical_cast("string"),該函式直接將字串轉換為數字。如果輸入無效,則返回異常「bad_lexical_cast」。

//c++ code to demonstrate working of lexical_cast() #include #include // for lexical_cast() #include  // for string using namespace std; int main()
輸出:

the newly formed string from number is : 2016
方法2:使用to_string()該函式接受乙個數字(可以是任何資料型別),並以所需的字串形式返回該數字。

// c++ code to demonstrate "to_string()" method // to convert number to string. #include #include // for string and to_string() using namespace std; int main()
輸出:

the integer in string is : 20the float in string is : 30.500000
方法3:使用boost lexical_cast與字串轉換類似,「lexical_cast()」函式保持不變,但是這次引數列表修改為「lexical_cast(numeric_var)」。

// c++ code to demonstrate "lexical_cast()" method // to convert number to string. #include  // for lexical_cast() #include  // for string using namespace std; int main()
輸出:

the float value in string is : 10.5the int value in string is : 17

將數字字串轉換為數字

將數字字串轉換為數字的方法有多種,c中有atoi,atof,sscanf函式可用,這些函式的用法可以在msdn里查到,這裡就不在多說了,現在說一種通用的轉換的方法 template bool str2value const std string str,type value,std ios base...

17 數字字串轉換為整數

編寫乙個 c 語言程式,該程式首先讀取使用者通過鍵盤輸入的乙個字串 該字串由數字字元和非數字字元組成 然後將其中連續的數字字元作為乙個整數取出來,儲存到相應的整數陣列中,最後將這些整數按照從大到小的順依次輸出。例如 某使用者輸入的字串為 abc123de45f 6?789 則應該分別提取出 123,...

字串轉換為數字

include include using namespace std 思路 首先看字串第一位是不是 或者 如果是 最後結果乘以乙個 1 如果是 最後結果乘以乙個1 然後遍歷字串,發現字元直接返回0 是數字,將其轉換為int型別 字元型別的數字轉換為整數型別的數字需要 48 轉換為數字後,乘以它所需...