vs使用strcat怎么连接两个字符串?

请教一下vs中使用strcat连接a和b两个字符串,出现这个是什么原因?如果要使用strcat连接字符串的话需要添加哪些头函数呢?
img

我明白了,出现这个问题是因为strcat_s需要三个参数,这个程序写得很不规范,假设
char a[20]={"hello"};
char b[]={"world"};
char c[20];
strcat_s(a,11,b);
strcpy_s(c,11,a);
printf("%s",c);
将一个数组赋给另一个数组不能直接用=,需要用strcpy函数,
strcat_s中间的数字是两个数组连起来的大小+1
strcpy_s中间的数字是a的大小+1

供参考:

#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int main()
{
    char a[] = {"hello"};
    char b[] = {"world"};
    char c[20] = {0};
    //c[20] = strcat_s(a,len,b);
    strcat_s(c, a);
    strcat_s(c, b);
    printf("%s\n",c);
    return 0;
}