Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/58.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语言中用更多的字符扩展字符(不允许覆盖)_C_Char - Fatal编程技术网

在C语言中用更多的字符扩展字符(不允许覆盖)

在C语言中用更多的字符扩展字符(不允许覆盖),c,char,C,Char,我想在ch[500]中保存更多字符,然后它就已经存在了。我不想失去我以前在那里保存的战利品 工作原理如下: ch = ch + ’nextch’; 您可以使用或strncat()连接两个字符串 比如说 char ch[100]; strcpy(ch,"hello"); strcat(ch," world"); 如果只想附加一个字符 char str[100]; strcpy(str,"hello"); char ch='a'; char buf[2]

我想在
ch[500]
中保存更多字符,然后它就已经存在了。我不想失去我以前在那里保存的战利品

工作原理如下:

ch = ch + ’nextch’;
您可以使用或
strncat()
连接两个字符串

比如说

char ch[100];
 strcpy(ch,"hello");
 strcat(ch," world");  
如果只想附加一个字符

    char str[100];
    strcpy(str,"hello");
    char ch='a';

    char buf[2];
    sprintf(buf,"%c",ch); 
    strncat(str,sizeof str, buf);

    size_t length= strlen(str);
    str[strlen(str)]=ch;
    str[length+1]='\0'; 

向我们展示一些代码-您是如何创建和初始化数组的?如何插入已存在的字符?它是一个以零结尾的C字符串吗?不确定,但如果我正确理解了问题中的伪代码,OP希望在数组中附加一个字符,而不是一个字符string@Andreas你说得对。修改我的答案以反映您的评论。在上一个示例中,您使用
strlen
计算了两次