我有一个空字符串(char * str),我想将字符串联到此字符串。我试过这个
char * str;
char arr [10]; //其中arr包含一些字符
当我这样做时:
str=str + arr[0];
它对str
无效。
答案 0 :(得分:3)
在C中,您无法使用+
连接两个字符串,因为字符串不是内置数据类型,请使用strcat()
中定义的string.h
。
一个小例子:
/* strcat example */
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main ()
{
char *str;
char arr[10];
puts("Enter some string:");
scanf("%9s",arr);
str=malloc(256);
strcat (str,arr);
strcat (str," World.");
puts (str);
return 0;
}
输入
您好
<强>输出强>
Hello World。
答案 1 :(得分:2)
使用strcat连接字符串。 strcat_s类似但更安全,因为它有长度验证。