注册 登录
编程论坛 VC++/MFC

请教一个关于连接字符串的问题~

zjjne 发布于 2012-05-21 12:18, 416 次点击
请教一个关于连接字符串的问题~
用字符数组,不用strcat函数,将两个字符串连接起来

代码如下:
程序代码:
#include <iostream>
using namespace std;

int main()
{
    int i,j;
    char c1[]={"Huizhou "},c2[]={"xueyuan"};
    const int a=strlen(c1),b=strlen(c2);
    const int k=a+b;
    char c3[k];
   
    for(i=0;i<=a-1;i++)
        c3[i]=c1[i];
    for(i=a;i<=a+b-1;i++)
        for(j=1;j>j+1;j++)
            c3[i]=c2[j];
    return 0;
}




编译时出错,求教~谢谢了~



--------------------Configuration: sy5_13 - Win32 Debug--------------------
Compiling...
sy5_13.cpp
C:\Documents and Settings\ZJJ\桌面\sy5_13\sy5_13.cpp(10) : error C2057: expected constant expression
C:\Documents and Settings\ZJJ\桌面\sy5_13\sy5_13.cpp(10) : error C2466: cannot allocate an array of constant size 0
C:\Documents and Settings\ZJJ\桌面\sy5_13\sy5_13.cpp(10) : error C2133: 'c3' : unknown size
执行 cl.exe 时出错.

sy5_13.obj - 1 error(s), 0 warning(s)
2 回复
#2
lknight2012-05-21 21:49
char c3[k]; 中括号里面不能是变量,得是常数;
想用变量的话,可以这样char *c3 = new char[k];


[ 本帖最后由 lknight 于 2012-5-21 22:27 编辑 ]
#3
zjjne2012-05-21 23:41
回复 2楼 lknight
谢谢哈~
1