char s1[100] = "";
char s2[] = "helo";
char s3[] = "wold";
strcat(s2, s3);
strcpy(s1, s2);
printf("%s", s1);
我在vs2013里运行能看到结果, 这里不行。
用strcat strcpy这样的函数时一定要保证第一个参数处有足够大的空间来容纳要操作的字符串。
空间不足的话编译器是不会报错的,也许也能运行,但有极大的可能发生缓冲区溢出错误,这是严重的安全隐患。