日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

C++字符串类型和数字之间的转换

發布時間:2024/4/18 c/c++ 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C++字符串类型和数字之间的转换 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

C++字符串類型和數字之間的轉換

轉載:http://www.cnblogs.com/luxiaoxun/archive/2012/08/03/2621803.html

1、字符串數字之間的轉換


字符串---字符數組
(1)string --> char *
? ?string str("OK");
? ?char * p = str.c_str();


字符數組---字符串
(2)char * -->string
? ?char *p = "OK";
? ?string str(p);

字符數組---CString
(3)char * -->CString?
? ?char *p ="OK";
? ?CString m_Str(p);
? ?//或者
? ?CString m_Str;
? ?m_Str.Format("%s",p);

CString---字符數組
(4)CString --> char *
? ?CString str("OK");
? ?char * p = str.GetBuffer(0);
? ?...
? ?str.ReleaseBuffer();

(5)string --> CString ?
? ?CString.Format("%s", string.c_str()); ?

(6)CString --> string
? ?string s(CString.GetBuffer(0)); ?
? ?GetBuffer()后一定要ReleaseBuffer(),否則就沒有釋放緩沖區所占的空間,CString對象不能動態增長了。

(7)double/float->CString
? ?double data;
? ?CString.Format("%.2f",data); //保留2位小數

(8)CString->double
? ?CString s="123.12";
? ?double d=atof(s); ??
?
(9)string->double
? double d=atof(s.c_str());

2、數字轉字符串:使用sprintf()函數
字串格式化命令,主要功能是把格式化的數據寫入某個字符串中。

函數原型

int sprintf( char *buffer, const char *format, [ argument] … );

參數列表

buffer:char型指針,指向將要寫入的字符串的緩沖區。

format:格式化字符串。

[argument]...:可選參數,可以是任何類型的數據。

返回值

字符串長度(strlen)


char str[10];
int a=1234321;
sprintf(str,"%d",a);
--------------------
char str[10];
double a=123.321;
sprintf(str,"%.3lf",a);
--------------------
char str[10];
int a=175;
sprintf(str,"%x",a);//10進制轉換成16進制,如果輸出大寫的字母是sprintf(str,"%X",a)
--------------------
char *itoa(int value, char* string, int radix);?
同樣也可以將數字轉字符串,不過itoa()這個函數是平臺相關的(不是標準里的),故在這里不推薦使用這個函數。

3、字符串轉數字:使用sscanf()函數
從一個字符串中讀進與指定格式相符的數據。


char str[]="1234321";
int a;
sscanf(str,"%d",&a);
.............
char str[]="123.321";
double a;
sscanf(str,"%lf",&a);
.............
char str[]="AF";
int a;
sscanf(str,"%x",&a); //16進制轉換成10進制

另外也可以使用atoi(),atol(),atof().

4、使用stringstream類

用ostringstream對象寫一個字符串,類似于sprintf()?
? ostringstream s1;
? int i = 22;
? s1 << "Hello " << i << endl;
? string s2 = s1.str();
? cout << s2;

用istringstream對象讀一個字符串,類似于sscanf()?
? istringstream stream1;
? string string1 = "25";
? stream1.str(string1);
? int i;
? stream1 >> i;
? cout << i << endl; ?// displays 25

寫代碼是一種藝術,甚于蒙娜麗莎的微笑。

分類:?C++基礎概念

總結

以上是生活随笔為你收集整理的C++字符串类型和数字之间的转换的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美黄色免费大片 | 精品中文字幕在线播放 | 四虎永久网站 | 黄色高潮 | www.国产成人| 秋霞99| 91夜色| 美女丝袜av| 97人人艹| 歪歪视频在线观看 | 夜夜撸小说 | 欧美一区二区三区网站 | 91精品国产99久久久久久 | 精品日韩制服无码久久久久久 | 欧美 日韩 国产 在线 | 青青青青青青青青草 | 羞羞动漫免费观看 | 日韩一区二区在线观看视频 | 91国偷自产中文字幕久久 | 精品国产96亚洲一区二区三区 | 欧美色激情 | 秋霞无码一区二区 | 欧美日韩免费在线视频 | 亚洲av永久中文无码精品综合 | 色哟哟在线 | 中文字幕乱码人妻无码久久95 | 日本一区二区不卡在线观看 | 亚洲国产精品女人 | 岛国av在线免费观看 | 亚洲天堂一区 | 久久精品久久精品久久 | 夜夜夜夜骑 | 中文字幕精品一区久久久久 | 3344成人| 美女色呦呦 | 非洲黄色大片 | 人妻丰满熟妇岳av无码区hd | 三级小视频在线观看 | 欧美中文字幕一区二区三区 | 色视频在线观看 | 在线综合视频 | 美女福利视频在线 | 97超碰人人在线 | 日韩黄色在线播放 | 在线免费看av片 | 精品人妻一区二区三区久久嗨 | 亚洲无码一区二区三区 | 久久国内精品视频 | 在线观看免费福利 | 国产黄色一级 | 国产高清不卡视频 | 欧美在线观看一区二区三区 | 免费看黄网站在线观看 | 午夜精品一区二区三区三上悠亚 | 麻豆国产精品视频 | 午夜综合网 | 韩国在线不卡 | 91视频分类 | 欧美黄视频 | 中文字幕av专区dvd | 日韩有码电影 | 国产成人精品一区二区在线小狼 | 波多野在线 | 亚洲理论在线观看 | 日日日插插插 | 中文字幕亚洲视频 | 黄色网址在线免费看 | 射影院 | 中文字幕日韩电影 | 91网站在线免费观看 | 亲嘴脱内衣内裤 | 国产日本在线播放 | 手机成人av | wwwjavhd| 国产三级理论片 | 青春草国产视频 | 91精品人妻一区二区三区蜜桃2 | 少妇婷婷 | 巨大乳の揉んで乳榨り奶水 | 欧美日韩一区二区视频观看 | 久久免费播放视频 | 亚洲综合色站 | 黄色工厂在线观看 | 中文字幕有码在线播放 | 在线观看波多野结衣 | 欧美一级黄色片在线观看 | 欧美精品在线第一页 | 久久精品欧美一区二区三区麻豆 | 国产精品色婷婷99久久精品 | 视频一区二区三 | 成人123| 国产视频一区二区三区在线观看 | 日韩欧美亚洲 | 黄色生活毛片 | 激情黄色小说视频 | 69热在线 | 蜜臀久久99精品久久久久宅男 | 中文字幕色片 | 免费国产精品视频 |