char *p=szText; //定義一個指針,指向字符數(shù)組元素for(int k=0;k<j;k++){ printf("%x",m2[k]);itoa(m2[k],szText,10);p++}//我這個程序中szText[]是一個字符數(shù)組,m2[]是一個整型數(shù)組,現(xiàn)在我想把m2[]中的十進(jìn)制數(shù)(許多個)轉(zhuǎn)化為字符型并依次存到szText[]中,于是用了itoa函數(shù)。但是調(diào)試發(fā)現(xiàn)結(jié)果不對。該怎么辦?另外,指針是我后加的,為了依此遞增字符數(shù)組,但似乎如果十進(jìn)制數(shù)很大時就不行了,該怎么改?
3 回答

aluckdog
TA貢獻(xiàn)1847條經(jīng)驗(yàn) 獲得超7個贊
char類型只有1個字節(jié)啊,范圍只是0-255或-128~127,int m2[]是4字節(jié),你輸入如果太大了會溢出。

互換的青春
TA貢獻(xiàn)1797條經(jīng)驗(yàn) 獲得超6個贊

慕田峪7331174
TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超13個贊
szText要定義成二維的,才能放下很多個(比如10個)。
//#include "stdafx.h"//vc++6.0加上這一行.
#include "stdio.h"
#include "stdlib.h"
void main(void){
char szText[10][11];
int m2[10]={1000000000,20000,1234567890,12,22,33,44,55,77,88};
for(int k=0;k<10;k++){
printf("%x ",m2[k]);
itoa(m2[k],szText[k],10);
printf("%s\n",szText[k]);
}
}
添加回答
舉報
0/150
提交
取消