字符复制问题,请指教。。。
本帖最后由 下弦月之夜_夜末 于 2013-11-30 01:41 编辑//将字符数组s2中的所有字符复到字符数组s1中。
#include "stdio.h"
int main(void)
{
char s2[]="I am good!",s1;
int i=0;
while(s2!='0')
{
s1=s2;
i++;
}
s1='\0';
printf("%s",s1);
return 0;
}
执行时弹出了停止工作窗口,请问我的代码哪里错了?请指教。。。
我艹,虽然我是菜鸟,但还是看得出明显s2!='\0',s1=s2,s1='\0',你不用索引操作数组?
截图怎么跟贴上来的代码不一样?截图的代码while(s2 != '\0')处加个\ 本帖最后由 琉魂 于 2013-11-30 09:56 编辑
首先我想问问楼主,您定义的“i”在整个程序中有实际意义么?其次s1、s2表示的是这两个数组的首地址,要想调用其中的成员要“s1”这样表示。
看看代码吧,错误蛮多的,不一一列举了。
#include <stdio.h>
int main(void)
{
char s2[] = "I am good!" , s1;
int i = 0;
while(s2 != '\0')
{
s1 = s2;
i++;
}
s1 = '\0';
printf("%s\n",s1);
return(0); //建议使用getchar()函数使程序停顿一下,要不一下就没了!
}
#include "stdio.h"
int main(void)
{
char s2[]="I am good!",s1;
int i=0;
while(s2 != '\0')
{
s1=s2;
i++;
}
s1='\0';
printf("%s",s1);
return 0;
} 楼上说的很正确 楼上的代码是对的 #include <stdio.h>
int main(void) {
char s2[]="I am good!",s1;
int i=0;
while(s1 = s2) ++i;
puts(s1);
} 叁er 发表于 2013-11-30 09:04 static/image/common/back.gif
截图怎么跟贴上来的代码不一样?截图的代码while(s2 != '\0')处加个\
{:1_1:}谢谢 寥若晨星 发表于 2013-11-30 10:01 static/image/common/back.gif
{:1_1:}谢谢 好多错误。。楼上已经指正了。。 #include "stdio.h"
int main(void)
{
char s2[]="I am good!",s1;
while(*s2 != '\0')*(s1++) = *(s2++);
*s1 = '\0';
printf("%s",s1);
return 0;
}
页:
[1]