gpt4 book ai didi

c - 尝试使用 strcat 连接字符和字符串时出现 'segmentation fault' 错误

转载 作者:行者123 更新时间:2023-11-30 20:32:57 24 4
gpt4 key购买 nike

我不断收到此错误 segmentation fault当我尝试访问字符串中的字符并将其添加到另一个字符串时。代码如下。

提前致谢。

// function to find the initials of a name
void findInitials(char* name)
{
char* initials = "";
bool initialCreated = false;
int n = 0;

while(name[n] != '\0')
{
if(name[n] != ' ')
{
if(initialCreated == false)
{
//this is where I am facing the issue
strcat(initials, &name[n]);
printf("INITIAL: %c\n", name[n]);
initialCreated = true;
}

if(name[n+1] == ' ')
{
initialCreated = false;
n++;
}
}
n++;
}
}

最佳答案

char*initials = ""; 不是 charinitials[SOME_SIZE] = {0}; 您没有分配任何内存,您只需获取一个指针并开始将一些不应该写入的字符写入内存。一般来说,段错误告诉您正在修改一段不允许的内存。这就是您的情况发生的情况。

关于c - 尝试使用 strcat 连接字符和字符串时出现 'segmentation fault' 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46634625/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com