问题描述:
在写C#程序时,拼接两个字符可以直接用 “+”, 比如string str = str1 + "Hello World"。那么在C中, 如何将Char *与字符串“Hello World”拼接起来,得到新的字符串呢?
解答:
对于像我一样习惯了写C#程序的同学来说,习惯了利用“+”拼接,转到C时便懵B了,哈哈。其实很简单,代码如下:
char p[10] = "linux";//第一个字符串
char q[20];//结果字符串
char *h = "Hello World!"//第二个字符串
strcpy(q,p);//将第一个字符串p拷贝到q中
strcat(q,h);//将第二个字符串h拼接到q之后
这里要注意的一点便是,结果字符串的长度需大于或等于俩字符串p和h的长度之和。
对于字符串拼接函数strcat(char* c1, char* c2),我们也可以自己实现,其实现方式如下:
int str_ret;//字符串q的长度
str_ret = strlen(q);
int i = 0;//遍历赋值
while(h[i]){
q[str_ret_++] = h[i];
i++;
}
好了,希望能给初学者提供些帮助,深夜了,晚安,good night