-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'來查看內存錯誤 –