歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> C++中數值和字符串的轉換

C++中數值和字符串的轉換

日期:2017/3/1 9:55:32   编辑:Linux編程

在C++編程中,時常會遇到數值和字符串之間的轉換,C-Style的atoi,atol,strtod,strtol,strtoul等函數在功能上有時候會略顯不足,當然在C++中實現數值和字符串轉換的形式各種各樣,本文對自己在編程中遇到的情況進行了簡單的總結。

1) 數值類型轉為字符類型

char str[255];

int num = 100;

sprintf(str, "%d", num);

當然對於各種方式,可以進行任意的擴展和字符的鏈接。如:

char str[255];

int num = 100;

char postStr[]=".jpg";

sprintf(str, "%d absc %s", num,postStr);

除此,可以根據需要進行擴展。

2)使用stringstream對象進行轉換

stringstream ss;

int num = 100;

string str;

ss<<num; //

ss>>str; // 輸出 100的字符串

同樣,可以任意的對ss進行擴展,如 :

ss<<"E:\\images\\<< num<<".jpg"; // 合成一個路徑

3)字符串轉換為數值

stringstream ss;

int num = 0;

string str(“1000”);

ss<<str;

ss>>num; // num的值就變成了1000

4)使用CString來格式化數值

CString cstr;

int num = 100;

string str(".jpg");

cstr.format("E:\\images\\%d%s",num,str);

Copyright © Linux教程網 All Rights Reserved