汉字字串可以用C++中的strcat连接吗??

来源:百度知道 编辑:UC知道 时间:2024/06/07 20:45:48
ch1="我是";
ch2="中国人";
strcat(ch1,ch2);
cout<<ch1;
怎么报错

楼上的有点小错误啊,呵呵...大意了,来修改下
首先,楼主,要知道如何使用编译器自带的函数
你就必须知道它的函数圆型,首先给出这个函数的函数原型

strcat
原型:extern char *strcat(char *dest,char *src);

用法:#include <string.h>

功能:把src所指字符串添加到dest结尾处(覆盖dest结尾处的'\0')并添加'\0'。

说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。
返回指向dest的指针。

下面是修改好的程序代码:

#include<stdio.h>
#include<string.h>
int main()
{
char ch1[80]; //这里不能是无符号的,无符号的貌似不符合函数原型声明,编译器也不能进行强制转换
char ch2[20]; //同上
strcpy(ch1,"我是");
printf("Ch1的值是:%s\n",ch1);
strcpy(ch2,"中国人");
printf("Ch2的值是:%s\n",ch2);
strcat(ch1,ch2);
printf("ch2接到Ch1后,ch1的值是:%s\n",ch1);
}

在补充一点,我用的编译器是vs2008,你也可以用下这个看看,编译的时候无符号的会出现问题

顺便贴下加了unsigned之后的出错信息
1>main.cpp
1>d:\我的文档\visual studio 2008\projects