題目:將乙個字串轉換成數字。例如:"123"-->123, "71.02"-->71.02.
方法一,直接呼叫庫函式atoi(const char*) 和atof(const char*)
stoi(string str)
# include # include int main ()
輸出結果:
num_int: 435
num_double: 436.550000
方法二,自己實現
int str2int(const char *str)
while(*str != 0)
temp = temp * 10 + (*str - '0'); //如果當前字元是數字則計算數值
str++; //移到下乙個字元
}
if (*ptr == '-') //如果字串是以「-」開頭,則轉換成其相反數
return temp;
}
數字轉字串 字串轉數字
數字轉字串 這裡首先用到乙個陣列逆置函式如下 void reverse char arr 逆置 for p arr p arr p 將arr陣列逆置 因為將乙個數字轉成字串,若果是從右往左依次獲得,操作較容易,所以以此得到的字串是數字的逆序字串,所以要逆置,才可得到順序 如下 void myitoa...
字串轉數字
注意進製,注意小數,負數,指數。小數跟指數比較繁瑣。應該對字串做限制,字串只是整數字串。否則,以下幾種情況都是會報錯 1.0x011.011,0b011.011都是錯誤的。2.0100.011實際上是十進位制的100.01。3.指數表示造成邏輯更多了。鑑於以上幾個情況考慮,為簡化,整數字串轉數字。草...
字串轉數字
看了劍指offer上面的第一道題,字串轉數字,就去查了下,有多種方法。比如可以直接用函式atoi 下面是我的 include include include include includeusing namespace std int main string a 100 int num 0 if a...