急!整型数组赋值给字符数组的问题

具体程序很长,我不想写;但有一个问题想了好长时间,请不吝赐教。char*p=szText;//定义一个指针,指向字符数组元素for(intk=0;k<j;k++){pri... 具体程序很长,我不想写;但有一个问题想了好长时间,请不吝赐教。
char *p=szText; //定义一个指针,指向字符数组元素
for(int k=0;k<j;k++)
{
printf("%x",m2[k]);
itoa(m2[k],szText,10);
p++
}
//我这个程序中szText[]是一个字符数组,m2[]是一个整型数组,现在我想把m2[]中的十进制数(许多个)转化为字符型并依次存到szText[]中,于是用了itoa函数。但是调试发现结果不对。该怎么办?另外,指针是我后加的,为了依此递增字符数组,但似乎如果十进制数很大时就不行了,该怎么改?
展开
 我来答
月光疾风_Free
推荐于2016-09-06 · TA获得超过681个赞
知道小有建树答主
回答量:262
采纳率:0%
帮助的人:214万
展开全部

你的思维比较混乱,其实很简单:

#include <stdio.h>
#include <stdlib.h>
int main()
{
 int m2[5] = {12,50,18,20,15};
 char szText[20];
 printf("将这些整数转化成字符串:\n");   
 for(int k=0;k<5;k++)
 {         
  itoa(m2[k],szText,10);
  printf("%s\n",szText);
 }
 return 0;
}

运行结果如下:

追问
谢谢你的帮忙,我想问一下,我不需要打印,就只想把全部字符存放在szText数组中,该怎么做?
追答

这也很简单,用一个二维数组就OK了

#include <stdio.h>
#include <stdlib.h>
int main()
{
 int m2[5] = {12,50,18,20,15};
 char szText[5][20];  //用一个二维数组就可以将转化后的字符串存储 
 for(int k=0;k<5;k++)
 {         
  itoa(m2[k],szText[k],10);
  
 }
 //你需要的存储的功能上面已经完成,下面输出是为了验证一下szText[5][20]有没有存放成功
 printf("将这些整数转化成字符串:\n");
 for(k=0;k<5;k++)
 {
  printf("%s\n",szText[k]);
 }
 return 0;
}
忽忽上升
2014-06-27 · TA获得超过1911个赞
知道小有建树答主
回答量:1166
采纳率:70%
帮助的人:577万
展开全部
你把szTEXT[]定义成string类型的数组吧,#include<string>
string sxTEXT[100];这样整形的就算大数也没关系。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
White_MouseYBZ
2014-06-27 · TA获得超过4万个赞
知道大有可为答主
回答量:2.1万
采纳率:82%
帮助的人:6644万
展开全部
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]);
}
}
追问
谢谢你的帮忙,我想问一下,我不需要打印,就只想把全部字符存放在szText数组中,该怎么做?
追答
不是给你已经做完了吗?不打印就把打印语句printf("%s\n",szText[k]);删除就行了啊。好像都没有看答案就又追问了。完全是在与未入门者打交道……
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友feec0b1
2014-06-26 · TA获得超过1106个赞
知道小有建树答主
回答量:216
采纳率:0%
帮助的人:208万
展开全部
char类型只有1个字节啊,范围只是0-255或-128~127,int m2[]是4字节,你输入如果太大了会溢出。
更多追问追答
追问
那该怎么解决?
追答
不知道你这部分的设计思路?你可以写一个边界检测然后越界给个提示信息让输入者重新输入就好了。不过不能直接让对方输入char类型么?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式