-1
这是我的计划:C: “zsh中:中止” 错误
#include <stdio.h>
char *ft_strcat(char *dest, char *src)
{
int i;
int k;
i = 0;
k = 0;
while (dest[i])
i++;
while (src[k])
{
dest[i + k] = src[k];
//i++;
k++;
}
dest[i + k] = '\0';
return (dest);
}
int main(){
//ft_strcat
char str[] = "Hello, ";
char str2[] = "World!";
printf("%s", ft_strcat(str, str2));
return 0;
}
它实现strcat的功能。 当我试图复制“世界!”时到“你好”,我有一个错误“zsh:abort”。当我试图复制到“你好”时没有问题。
我该如何处理这个错误?为什么这个逗号会导致这个问题?
编译所有的警告和调试信息(例如'gcc -Wall -Wextra -g' with [GCC](http://gcc.gnu.org/))学习[使用](https:// sourceware.org/gdb/download/onlinedocs/gdb/index.html)gdb调试器 –
你可以使用'valgrind'来查看内存错误 –