C中char数组中随机不需要的符号

时间:2016-02-29 03:14:01

标签: c

我尝试使用strcat()创建一个字符串数组,但它会不断给我不需要的字符,例如:char arr[50] strcat(arr, "test")以及我puts(arr)或{ {1}},它总是给我printf("%s\n", arr)而不仅仅是@!*test,是否有人知道是什么导致了我的问题?

谢谢!

1 个答案:

答案 0 :(得分:1)

您必须在使用其值之前初始化该数组,或者调用未定义的行为

试试这个:

#include <stdio.h>
#include <string.h>

int main(void) {
    char arr[50] = {0}; /* add = {0} */
    strcat(arr, "test");
    puts(arr);
    return 0;
}