gpt4 book ai didi

c - C语言编程中的strcat()

转载 作者:行者123 更新时间:2023-11-30 20:54:09 26 4
gpt4 key购买 nike

when I run this code I always found a problem in my IDE. Can you give this solution ?

#include<stdio.h>
#include<string.h>
int main(void)
{
char cname[4]="mahe";
strcat(cname, "Karim");
printf("%s",cname);
getch();
return 0;
}

最佳答案

您的数组不够大。原始数组不够大,无法容纳其初始值末尾的空字节,因此 strcat() 无法找到字符串的末尾。然后你添加它,它写入数组之外。这些都会导致未定义的行为。

需要将其声明为足够大,以容纳原始字符串、要添加到其中的字符串以及尾随空字节。因此它必须至少为 10 个字节 (4+5+1)。

char cname[10] = "mahe";
strcat(cname, "Karim");
printf("%s\n", cname);

关于c - C语言编程中的strcat(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43012901/

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