如何在C中两个字符串之间添加空格

时间:2020-09-26 21:02:23

标签: c string

我正在用C制作自己的strcat版本,但是无法在连接词之间添加空格。 ps:搜索过多没有合适的答案。

#include <stdio.h>
#include <conio.h>
int xstrlen(char *a)
{
    int count = 0;
    while (*a != '\0')
    {
        count++;
        a++;
    }
    return count;
}
void xstrcpy(char *a, char *b, char *c)
{
    while (*b != '\0')
    {
        *a++ = *b;
        *b++;
    }
    while (*c != '\0')
    {
        *a++ = *c;
        *c++;
    }
    *a = '\0';
}
void xstrcat(char *a, char *b)
{
    xstrcpy(a, a, b);
}
int main()
{
    char src[20], tar[20];
    puts("First Name");
    gets(src);
    puts("Last Name");
    gets(tar);
    printf("Executing...\n");
    xstrcat(src, tar);
    printf("Full Name - %s", src);

    printf("\nEnter any Key to exit...");
    getch();
    return 0;
}

试图在xstrcpy的两个while循环之间添加* a ='',但这没有用。

1 个答案:

答案 0 :(得分:2)

这很容易

        *a++=' ';

完整代码:

void xstrcpy(char *a, char *b, char *c)
{
    while (*b != '\0')
    {
        *a++ = *b++;
    }

    *a++=' ';

    while (*c != '\0')
    {
        *a++ = *c++;
    }
    *a = '\0';
}
相关问题