char強(qiáng)制類型轉(zhuǎn)換為int char類型的數(shù)組可不可以轉(zhuǎn)為int類型的數(shù)組?
char類型的數(shù)組可不可以轉(zhuǎn)為int類型的數(shù)組?如果char類型的數(shù)組表示字符串,也就是說,如果有一個(gè)獨(dú)立值等于“0”的數(shù)組,并且數(shù)組中有一個(gè)數(shù)字,則可以將其轉(zhuǎn)換為int類型。Char abuffer
char類型的數(shù)組可不可以轉(zhuǎn)為int類型的數(shù)組?
如果char類型的數(shù)組表示字符串,也就是說,如果有一個(gè)獨(dú)立值等于“0”的數(shù)組,并且數(shù)組中有一個(gè)數(shù)字,則可以將其轉(zhuǎn)換為int類型。Char abuffer[100]abuffer[0]=“1”abuffer[1]=“0”可以這樣轉(zhuǎn)換int ndaint nresultnresult=sscanf(abuffer,%d”,&ndata)if(nresult==1){printf(“轉(zhuǎn)換成功數(shù)據(jù)=%d”,ndata)}else{printf(“conversion failed”)}
假設(shè)int和char的數(shù)組如下:
int i[2]={1,2}
char c[2]={1,2}
轉(zhuǎn)換代碼:
int a[2]={1,2}]char c[2
]for(int i=0,i
int是一個(gè)將數(shù)值向下舍入到最接近整數(shù)的函數(shù)。
Char是C/C整數(shù)數(shù)據(jù)中的一個(gè)奇點(diǎn)。其他的,比如int/long/short,當(dāng)它們沒有指定signed/unsigned時(shí),默認(rèn)為signed。但是,char在標(biāo)準(zhǔn)中是無符號(hào)的。編譯器可以實(shí)現(xiàn)有符號(hào)或無符號(hào)。一些編譯器(如PSOs編譯器)還可以通過compile開關(guān)指定它是有符號(hào)的還是無符號(hào)的。