连接两个数组

时间:2015-07-08 14:09:44

标签: c arrays string concatenation

我试图创建一个程序,它接收两个数组并连接它们以创建一个新字符串。这是两个字符串。

 char a[8]={"hellostr"};
 char b[8]={"HELLOSTR"};

有人可以告诉我如何连接并显示这个连接的字符串?我试着寻找它但却无法理解它。

2 个答案:

答案 0 :(得分:3)

您需要使用string.h中的strcat()功能。

样本算法:

  1. 定义一个数组(比如说destarr[128]足够大来保存结果(连接字符串)。
  2. memset() destarr0
  3. 使用strcat(destarr, a)strcat(destarr, b)逐个连接。
  4. 那就是说,

     char a[ ]={"hellostr"};
    

    被认为更好,更不容易出错

    char a[8]={"hellostr"};
    

    as,

    • 在前一种情况下,编译器负责根据需要使用 mind 中的空终止符分配内存。该数组可用作字符串
    • 在后一种情况下,null终结符没有空间,因此,数组既不能被认为也不能用作字符串

答案 1 :(得分:0)

strcat功能可以使用。

标题 - string.h

如果你想在没有strcat功能的情况下这样做,那么你可以编写一个简单的函数 -

  void concatenate(char a[], char b[])
  {
     int c, d;

      c = 0;

     while (a[c] != '\0')
   {
        c++;    
   }

     d = 0;

   while (b[d] != '\0') 
    {
       a[c] = b[d];
       d++;
       c++; 
    }

       a[c] = '\0';
  }
相关问题