鱼C论坛

 找回密码
 立即注册
查看: 2123|回复: 2

[已解决]strncat函数

[复制链接]
发表于 2018-6-6 15:46:57 | 显示全部楼层 |阅读模式
10鱼币
本帖最后由 wow7jiao 于 2018-6-6 15:50 编辑

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

int main()
{
        char str1[20] = "I ";
        char str2[20] = "love ";
        char str3[20] = "FishC.com!";

        strncat(str1, str2, 6);
        strncat(str1, str3, 11);

        printf("str1: %s\n", str1);

        return 0;
}

请问第二句源字符串小于n不填充'\0'(但是又有'\0')如何理解,我试验一下都填充了'\0'
最佳答案
2018-6-6 15:46:58
比如字符串str2为'love'
如果strncat(str1,str2,10);
那么后面多的字符位置,不会全部填充为'\0',只是在字符串结尾的的后面加一个'\0'
QQ截图20180606154519.png

最佳答案

查看完整内容

比如字符串str2为'love' 如果strncat(str1,str2,10); 那么后面多的字符位置,不会全部填充为'\0',只是在字符串结尾的的后面加一个'\0'
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-6-6 15:46:58 | 显示全部楼层    本楼为最佳答案   
比如字符串str2为'love'
如果strncat(str1,str2,10);
那么后面多的字符位置,不会全部填充为'\0',只是在字符串结尾的的后面加一个'\0'
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2018-6-6 16:06:12 | 显示全部楼层
受教了, strncpy 居然填充了那么多'\0'
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-29 22:30

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表