C语言 strcpy函数问题?
#include<stdio.h>#include<string.h>intmain(){char*s="helloabc";chara[9];charb[2];char...
#include <stdio.h>
#include <string.h>
int main(){
char *s="helloabc";
char a[9];
char b[2];
char c[0];
strcpy(a,s);
strcpy(b,s);
strcpy(c,s);
printf("%s\n",a);
printf("%s\n",b);
printf("%s\n",c);
return 0;
}
源代码如上
运行发现打印的三个结果都是helloabc
bc不是会越界吗?怎么没有报错? 展开
#include <string.h>
int main(){
char *s="helloabc";
char a[9];
char b[2];
char c[0];
strcpy(a,s);
strcpy(b,s);
strcpy(c,s);
printf("%s\n",a);
printf("%s\n",b);
printf("%s\n",c);
return 0;
}
源代码如上
运行发现打印的三个结果都是helloabc
bc不是会越界吗?怎么没有报错? 展开
展开全部
追答
嗯,好吧,菜鸟教程第一个printf的输出与楼主的代码运行的在不一致呀……
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询