C语言中字符数组中不需要的随机符号
我试图通过使用C语言中字符数组中不需要的随机符号,c,C,我试图通过使用strcat()来创建一个字符串数组,但是它总是给我不需要的字符,例如:char-arr[50]strcat(arr,“test”)当我放置(arr)或printf(“%s\n”,arr)时,它总是给我@*测试而不仅仅是测试,有人知道是什么导致了我的问题吗 谢谢 必须在使用数组的值之前初始化数组,否则调用未定义的行为 试试这个: #include <stdio.h> #include <string.h> int main(void) { char
strcat()
来创建一个字符串数组,但是它总是给我不需要的字符,例如:char-arr[50]
strcat(arr,“test”)
当我放置(arr)
或printf(“%s\n”,arr)
时,它总是给我@*测试
而不仅仅是测试,有人知道是什么导致了我的问题吗
谢谢 必须在使用数组的值之前初始化数组,否则调用未定义的行为 试试这个:
#include <stdio.h>
#include <string.h>
int main(void) {
char arr[50] = {0}; /* add = {0} */
strcat(arr, "test");
puts(arr);
return 0;
}
#包括
#包括
内部主(空){
char arr[50]={0};/*add={0}*/
strcat(arr,“测试”);
puts(arr);
返回0;
}
OP没有遵循的建议。对于字符数组,可以使用char arr[50]=”当然是代码>。