goog 楽
2018-12-16 07:47
采纳率: 66.7%
浏览 1.4k

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();
}
  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • 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();
    }
    
    已采纳该答案
    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题