求VC一个简单的循环赋值

gelinqu 2008-08-29 04:39:10
char *Time;
int i;
Time=SysMalloc(20);
for(i=0;i<=20;i++)
{
char tmp[10];
sprintf(tmp,"%d",i);
Time[20]=strcat("A",tmp);
}

我的目的是用一个循环将A1,A2.....A10这十个用A和数字合成的字符串写到
一个字符数组里并显示出来。
上面写了一部分,但应该是错的,对C语言不熟,请帮手用最简单的方法写一下这个程序。100分送上
...全文
250 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
gaoteng1984 2008-09-03
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 Mackz 的回复:]
你这个循环越界了。
[/Quote]
sorry,copy的ls们的代码,确实越界了~
permanier 2008-09-02
  • 打赏
  • 举报
回复
我还没有分了,这个问题貌似不难啊
deryker 2008-08-31
  • 打赏
  • 举报
回复
1楼可以,顶!
菜牛 2008-08-30
  • 打赏
  • 举报
回复
你这个循环越界了。
jia_xiaoxin 2008-08-30
  • 打赏
  • 举报
回复
另一种方法
char Time[256];
char * point = Time;
for(i=0; i < 10; i++)
{
sprintf(point,"A%d", i+1);
point += i/10+2 ;
}
printf(Time);
jyh_baoding 2008-08-30
  • 打赏
  • 举报
回复
1楼的可以啊
babyyang1213 2008-08-30
  • 打赏
  • 举报
回复
问题很简单哦。就是熟练运用几个C的函数
malloc 内存分配, free 内存释放
memset 初始化所有字符数组的元素
sprintf 指定字符格式。
strcat 字符
o(∩_∩)o... 多用就熟悉了。用MFC多了可能这些最基本的东西会忘了。
还可以看看 strlen strcpy .......
tracing 2008-08-30
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 vcPlayer 的回复:]
引用 3 楼 feilinhe 的回复:
被楼上的抢先了,不过这样的问题不值得楼主用这么多分的


?????这位施主…………
[/Quote]
qq_sugar 2008-08-30
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 Mackz 的回复:]
你这个循环越界了。
[/Quote]
人家的循环没有越界啊;)
gaoteng1984 2008-08-29
  • 打赏
  • 举报
回复
char tag[10];
int i;
for(i=0;i <=20;i++)
{
sprintf(tag, "A%d", i);
MessageBox(NULL,tag,"a",MB_OK);
}
WG_Wolf 2008-08-29
  • 打赏
  • 举报
回复
up
scq2099yt 2008-08-29
  • 打赏
  • 举报
回复
up 2 floor
hehe
BH2008 2008-08-29
  • 打赏
  • 举报
回复
char *Time;
int i;
Time=(char*)malloc(100);

for(i=0;i <=20;i++)
{
char tmp[10];
memset(Time, 0, 100);
sprintf(tmp, "A%d", i);
strcat(Time, tmp);
MessageBox(NULL,Time,"a",MB_OK);
}
//显示

free(Time);

这样就行了
vcPlayer 2008-08-29
  • 打赏
  • 举报
回复
那你直接MessageBox(NULL, tmp, "a", MB_OK)就行了嘛.
gelinqu 2008-08-29
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 greatws 的回复:]
char *Time;
int i;
Time=(char*)malloc(100);
memset(Time, 0, 100);
for(i=0;i <=20;i++)
{
char tmp[10];
sprintf(tmp, "A%d", i);
strcat(Time, tmp);
MessageBox(NULL,Time,"a",MB_OK);
}
//显示

free(Time);
[/Quote]

先谢这位朋友,但我在程序里加一句MessageBox(NULL,Time,"a",MB_OK);
循环第一次是A0,但循环第二次的时候是A0A1,第三次的时候是A0A1A2.......
而我的目的是第一次循环是A0,第二次是A1,第三次是A2.....
请帮助再看看要怎么改
feilinhe 2008-08-29
  • 打赏
  • 举报
回复
被楼上的抢先了,不过这样的问题不值得楼主用这么多分的
greatws 2008-08-29
  • 打赏
  • 举报
回复
char *Time;
int i;
Time=(char*)malloc(100);
memset(Time, 0, 100);
for(i=0;i <=20;i++)
{
char tmp[10];
sprintf(tmp, "A%d", i);
strcat(Time, tmp);
}
//显示

free(Time);

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧