C/C++類型轉(zhuǎn)換

timg.jpeg

在編程的過程中,要用到各種類型,那么難免就會存在類型轉(zhuǎn)換的問題,有時候不記得類型轉(zhuǎn)換怎么用真的很急人(我是菜雞)。

既然說到了類型轉(zhuǎn)換那就先說下類型吧!

前提:這里只是簡單的說明了幾種轉(zhuǎn)換的方法(日常常用的和跨平臺可以支持的),并不是所有的辦法。


1.c類型:

c類型基本可以分為:基本類型,枚舉類型,void類型和派生類型。

基本類型又可以分為整數(shù)類型和浮點類型。

image

整數(shù)類型又可以分為以下幾種:

image

浮點型又可以分為:

image

void類型又可以分為:

image

2.c++類型

基本的內(nèi)置類型

image

各種變量類型在內(nèi)存中存儲值時需要占用的內(nèi)存

image

c++里面還有一個很重要的string類型,但是這個就不是基本類型了,是STL庫里面的定義,但是是非常常用的,必須要介紹的。在c++里面用字符串我想大部分人都是直接用string這個小可愛的。char*都是用的比較少的。


3.類型轉(zhuǎn)換

int轉(zhuǎn)string

  • stringstream

int aa = 30;
stringstream ss;
ss<string s1 = ss.str();
cout<

  • 使用sprintf

int aa = 30;
char c[8];
int length = sprintf(c, "%05X", aa);
cout<<c<<endl; 0001e="" <="" p="" style="box-sizing: border-box;">

string轉(zhuǎn)int

  • stringstream

string s = "17";
stringstream ss;
ss<int i;
ss>>i;
cout<

  • strtol(string to long)

string s = "17";
char* end;
int i = staticcast<int style="margin: 0px; padding: 0px; max-width: 100%; box-sizing: border-box; word-wrap: break-word !important;">(strtol(s.c</int>str(),&end,16));
cout<<i<<endl; 23<int style="margin: 0px; padding: 0px; max-width: 100%; box-sizing: border-box; word-wrap: break-word !important;">(strtol(s.c_str(),&end,10));
cout<</int>

  • char*轉(zhuǎn)int

char p[]="123456";
long a = atoi(p);
printf("%ld\n",a);

  • char 轉(zhuǎn)int

  • 利用assic碼

char Ca = '7';
int Ia = 0;
Ia = (int)Ca - '0';
printf("%d\n",Ia);

  • string轉(zhuǎn)char*
    • c_str()

string Sa = "abc";

char * cha = Sa.c_str();

  • string轉(zhuǎn)char[]

  • 利用循環(huán)
    這個由于我們知道string的長度,可以根據(jù)length()函數(shù)得到,又可以根據(jù)下標直接訪問,所以用一個循環(huán)就可以賦值了。

string pp = "dagah";
char p[8];
int I;
for( i=0;i??p[i] = pp[i];
??p[i] = '\0';
printf("%s\n",p);
cout<<p; <="" p="" style="box-sizing: border-box;">

  • strcpy

char buf[10];
string str("ABCDEFG");
strcpy(buf, str.c_str());

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容