將數字字串轉換為數字

2021-04-21 10:33:11 字數 571 閱讀 3205

將數字字串轉換為數字的方法有多種,c中有atoi,atof,sscanf函式可用,這些函式的用法可以在msdn里查到,這裡就不在多說了,現在說一種通用的轉換的方法:

template

bool str2value(const std::string &str, type &value, std::ios_base &(*fun)(std::ios_base&) = std::oct)

第1個引數為待轉換的字串,第2個引數是轉換後的值

第3個引數fun的值可能為std::hex, std::dec, std::oct

示例:std::string strnum = "60.12";

float fnum = 0.0;

str2value(strnum,fnum);

strnum = "fff";

int inum = 0;

str2value(strnum,inum,std::hex);

std::cout << fnum << std::endl;

std::cout << inum << std::endl;

輸出:60.12

將數字轉換為字串

在日常程式設計中,我們經常需要將各型別的數字轉換為字串,這裡介紹幾種簡單方法。本文沒有介紹轉換的具體演算法。1.使用巨集轉換常量數字為字串 定義如下的巨集 define to string x x 則在 中就可以將各種型別的數字轉換為字串。這個巨集可以將任意的 中的字串轉換為c語言風格的字串 例 t...

17 數字字串轉換為整數

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

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

有許多情況需要將數字轉換為字串或將字串轉換為數字。本文中提到了一些實現此任務的方法。將字串轉換為數字 方法1 使用stringstream類或sscanf 方法2 使用stoi 或atoi 進行字串轉換 方法3 使用boost lexical cast boost庫提供了乙個內建函式lexical ...