我正在使用从 arg 接收到的字符串来返回另一个带有随机字符的字符串。
int size = strlen(argv[4]);
char* res = malloc(size+1);
然后 res 填充了 argv[4] 的字符,但是当我在控制台中输入 'test' 时,它返回 'Test?' (当我不改组字母而只是逐个字符地复制字符串时)。
这是为什么 ?
如果我把 size+100 改为,它可以工作,但我不明白为什么。
我正在使用从 arg 接收到的字符串来返回另一个带有随机字符的字符串。
int size = strlen(argv[4]);
char* res = malloc(size+1);
然后 res 填充了 argv[4] 的字符,但是当我在控制台中输入 'test' 时,它返回 'Test?' (当我不改组字母而只是逐个字符地复制字符串时)。
这是为什么 ?
如果我把 size+100 改为,它可以工作,但我不明白为什么。