|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
下面一段代码,使用strcpy复制之后无法输出复制之后的结果,请问一下大家原因是什么
- #include <stdio.h>
- #include <string.h>
- int main()
- {
- char *a = "ALIENTEK";
- char *b = "00000000";
-
- char c[33] = "ABC123";
- char d[33] = "12345678";
-
- printf("未更改前:\n");
- printf("a:%s\n",a);
- printf("b:%s\n",b);
- strcpy(a,c);
- strcpy(b,d);
- printf("更改之后:");
- printf("a:%s\n",a);
- printf("b:%s\n",b);
-
- return 0;
- }
复制代码
出错的原因如5楼说的一样,改正的办法就是让他们为相同的类型
- #include <stdio.h>
- #include <string.h>
- int main()
- {
- char *p,a[33] = "ALIENTEK";
- char *q,b[33] = "00000000";
- p = a;
- q = b;
-
- char c[33] = "ABC123";
- char d[33] = "12345678";
- printf("未更改前:\n");
- printf("a:%s\n", a);
- printf("b:%s\n", b);
- strcpy(p, c);
- strcpy(q, d);
- printf("更改之后:");
- printf("a:%s\n", a);
- printf("b:%s\n", b);
- return 0;
- }
复制代码
|
|