s[0]没复制到t[0],改成这样:
#include <stdioh>
int main()
{
char s[20]="I like it",t[20]="are you",c[20];
int i=0;
while(s[i]!='\0')
{
t[i]=s[i];
i++;
}
t[i]=0;
printf("string s:%s\n",s);
printf("string t:%s\n",t);
return 0;
}
这是一个不能再正常的问题了。就像,我拿起了菜刀,为什么切不好土豆丝一样。
只有熟练的掌握了土豆丝的切法,方可随心的切出土豆丝来。
只有熟练掌握了C语言编写某类问题代码的技能,也才能编写出解决这类问题的程序来。
编译成功只能说没有语法错误,就像会用刀切,不会切到手,并不意味着就能切出粗细均匀的土豆丝来,也就是并不一定能够实现功能。
具体为什么,还需要具体问题具体分析了
多种可能。
1装在C盘了,Vista上不能访问,管理员模式运行试试。
2目前进程中正又一个cpp1exe正在执行,所以这个文件受保护,不能打开创建。建议结束该进程,再Link。
你的代码是错了,所以才会这样。错误的地点在输出上,也就是最后一句
printf("%d %c %s", ssage, ssname, sssex);你定义的name是字符串,而sex是字符。所以应该改成
printf("%d %s %c", ssage, ssname, sssex);以上就是关于C语言数组问题,为什么下列程序中t[i]=0不生效全部的内容,包括:C语言数组问题,为什么下列程序中t[i]=0不生效、C语言程序问题,编译成功可却不能运行,这是为什么、为什么我的C语言程序没有错误却总是不能运行等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)