如何使用指针而不使用字符串库将字符数组复制到 C 中的另一个字符数组中?

我试过这个:

头文件:

char strconcat(char a[100], char b[100]) {
    int i=0,j=0;
    while(a[i] != '\0'){
        i++;
    }
    while(b[j] != '\0'){
        a[i] = b[j];
        j++;
        i++;
    }
    return a[100];
}

最佳答案

 char *strconcat(char *dst, const char *src)
 {
     char *bak = dst;
     while (*dst) dst++;
     while (*dst = *src)
     {
          dst++;
          src++;
     }
     return bak;
 }

请注意,您不能将 char a[100] 作为函数参数。在 C 中,此符号会自动转换为 char a[] ,相当于 char *a

您也不必将事物与 0 进行比较。默认情况下省略比较将使这种情况发生。

关于c - 如何使用指针而不使用字符串库将字符数组复制到 'c' 中的另一个字符数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25206875/

10-13 07:40
查看更多