goog 楽 2018-12-16 07:47 采纳率: 100%
浏览 1438
已采纳

c语言 strcat 函数问题

今天实验strcat函数的时候老出现一个问题显示:用于调用的参数太少(本人使用的是VS2017)
自己自行百度看到有这种写法却可以编译通过,求解。

#include <stdio.h>
#include <string.h>
int main(void)
{
    char d[] = "adiadjwijda"; 
    char *s = "aidwi";
    strcat_s(d,s);
    printf("%s", d);
    getchar();
}
  • 写回答

2条回答 默认 最新

  • threenewbee 2018-12-16 15:30
    关注

    strcat_s和strcat不同,它需要3个参数,第二个参数是缓冲区的大小,你这么写,d容纳不下拼接之后的字符串。
    你可以写

    #include <stdio.h>
    #include <string.h>
    int main(void)
    {
        char d[100];
            char d1[] = "adiadjwijda"; 
            strcpy_s(d, 100, d1);
        char *s = "aidwi";
        strcat_s(d, 100, s);
        printf("%s", d);
        getchar();
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?