Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
右移数组,在C中分配(中止陷阱:6)_C_Arrays_Macos_Memory_Char - Fatal编程技术网

右移数组,在C中分配(中止陷阱:6)

右移数组,在C中分配(中止陷阱:6),c,arrays,macos,memory,char,C,Arrays,Macos,Memory,Char,我的代码有问题。我想在第一个位置将一个字符“\u1”弹出到一个完整数组中。我写了这个,但终端显示了一个中止陷阱:6。你能帮我吗 //this code was deleted cause i had good answer! Sorry but is a school project and i couldn't post anything ! 我不知道我使用mac OSX是否重要,因为您使用的strcat功能是错误的。第一个参数是目标,因为您传递的是字符串文字,所以它是未定义的行为 strc

我的代码有问题。我想在第一个位置将一个字符“\u1”弹出到一个完整数组中。我写了这个,但终端显示了一个中止陷阱:6。你能帮我吗

//this code was deleted cause i had good answer! Sorry but is a school project and i couldn't post anything !

我不知道我使用mac OSX是否重要,因为您使用的strcat功能是错误的。第一个参数是目标,因为您传递的是字符串文字,所以它是未定义的行为

strcpy(dupstr, "_");
strcat(dupstr, temp);

应该这样做。

您使用的strcat功能错误。第一个参数是目标,因为您传递的是字符串文字,所以它是未定义的行为

strcpy(dupstr, "_");
strcat(dupstr, temp);

应该可以。我给你一个地方看看。长度为6的字符串需要存储7个字节,而不是6个字节。结尾有一个空字符,由您来为它提供空间。是的,很抱歉我用错误的方式写了字符串。我在数组中输入了“Hello”而不是“Hello!”,但中止陷阱仍然存在!:(
strcat(“25;”,temp);
是未定义的行为。不要强制转换
malloc()
。使用“gdb”调试工具,以准确了解导致SEG错误的语句。我将给您一个位置查看。长度为6的字符串需要存储7个字节,而不是6个字节。末尾有一个空字符,您可以为其提供空间。是的,很抱歉,我以错误的方式写入了字符串。我放入了数组“Hello”而不是“Hello!”,但中止陷阱仍然存在!:(
strcat(“25;”,temp);
是未定义的行为。不要强制转换
malloc()
。使用“gdb”调试工具准确地知道导致SEG故障的语句