![在这里插入图片描述](https://img-blog.csdnimg.cn/1144433371544eb8ba7d100248081d90.jpg)
#include <stdio.h>
#include <stdarg.h>
#include <string.h>
char *scat(char *dest, const char *src, ...)
{
va_list ap;
va_start(ap, src);
char *p = NULL;
strncat(dest, src, strlen(src));
while ((p = va_arg(ap, char *)))
{
strncat(dest, p, strlen(p));
}
return dest + strlen(dest) - 1;
}
int main(int argc, char *argv[])
{
char dest[512], src[5][30];
int i = 0;
while (i < 5)
{
scanf("%29s", src[i]);
i++;
}
size_t dlen = (size_t)(scat(dest, src[0], src[1], src[2], src[3], src[4], NULL) - dest + 1);
printf("连接后输出:\n%s\n长度为:%zd\n", dest, dlen);
return 0;
}