在C 中將數字轉換為字串,反之亦然
數字和字串之間的轉換是程式設計中的常見任務。在 C 中,可以使用多種方法,包括 C 11 標準和早期版本中內建的方法。
C 03 轉換方法
在 C 03 中, istringstream 和ostringstream 類別可分別用於數字到字串和字串到數字的轉換。例如:
int num = 123; stringstream ss; ss << num; string str = ss.str();
要將字串轉換回整數:
string str = "123"; stringstream ss(str); int num; ss >> num;
C 11 轉換函數
C 11 引入了幾個
字串到數字
float stof(const string& str); double stod(const string& str); long double stolet(const string& str); int stoi(const string& str, int base = 10); long stol(const string& str, int base = 10); unsigned long stoul(const string& str, int base = 10); long long stoll(const string& str, int base = 10); unsigned long long stoull(const string& str, int base = 10);
這些函數嘗試將給定字串轉換為指定的數字類型。如果成功,它們會傳回轉換後的值,如果不成功,它們會拋出異常。
數字到字串
string to_string(int val); string to_string(unsigned val); string to_string(long val); string to_string(unsigned long val); string to_string(long long val); string to_string(unsigned long long val); string to_string(float val); string to_string(double val); string to_string(long double val);
這些函數將給定的數值轉換為字串表示形式。
需要注意的是,C 11 數位轉換函數會對效能產生影響,特別是在精確度方面。對於更高的精度要求,建議使用其他方法,例如 C 03 istringstream/ostringstream 類別。
以上是如何在 C 中有效地將數字轉換為字串以及字串轉換為數字?的詳細內容。更多資訊請關注PHP中文網其他相關文章!