回 帖 发 新 帖 刷新版面

主题:[原创]紧急请教高手指点“字符串连接问题”的程序

题目:
   已知二维字符数组char s[][5]={"abcd","efgh","ijkh","mnop"};使用字符串处理函数,将该数组的4个字符串连接起来,组成一个字符串?


请教高手这个题应该怎么样做???紧急啊,一定要帮我啊,希望多多详细指点,重重有赏哦!
   以下是我写的一些乱七八糟的程序,我对这题,思路好像好模糊?
#include<iostream.h>
#include<stdlib.h>
#include<stringb.h>
void main()
{
  char s[][5]={"abcd","efgh","ijkh","mnop"};
  char s1[30]=s[0][5];
  char s2[20]=s[1][5];
  char s3[10]=s[2][5];
  char s4[6]=s[4][5];
  strcpy(s3,s4);
  strcpy(s2,s3);
  strcpy(s1,s2);
  cout<<s1<<endl;
  system("PAUSE");
}


特别是这种格式的字符串char s[][5]{"abcd","efgh","ijkh","mnop"};
不怎么理解??

回复列表 (共3个回复)

沙发

你输出
cout<<s[0]<<s[1]<<s[2]<<s[3]就知道了,
二维数组其实也能看做很多一维数组

板凳


    谢谢,那我看一下啊

3 楼

字符串连接嘛,方法还是比较多的,可以使用库函数strcat();
当然如果没有这个库函数或者不想直接用也可以自己编一个功能类似的
char * my_strcat(char * dest, const char * src)
{
    char *tmp = dest;
    while (*dest)
        dest++;
    while ((*dest++ = *src++) != '\0')//这个可能争议比较大,不要太细
        ;
    return tmp;
}

我来回复

您尚未登录,请登录后再回复。点此登录或注册