尝试在C中执行strcat函数时的EXC_BAD_ACCESS

Ash*_*Ash 2 c unix

我有一个程序,我在C中为uni编写,当我的代码到达这一行时:

strcat("md5 ", "blah");
Run Code Online (Sandbox Code Playgroud)

我收到一个EXC_BAD_ACCESS错误,我的应用程序崩溃了.据我所知,它没有任何问题,所以我认为一双新眼睛可以解决我的问题.有任何想法吗?

kic*_*hik 8

您正在尝试修改常量字符串.第一个参数strcat也是目标字符串,在您的情况下,它是一个常量字符串.你应该使用类似的东西:

char s[100];
strcpy(s, "md5 ");
strcat(s, "blah");
Run Code Online (Sandbox Code Playgroud)