zoukankan      html  css  js  c++  java
  • C语言学习之我见strncat()可调整的字符串拼接函数

    strncat()函数,用于两个字符串的拼接。
    (1)函数原型

    char * strncat(char * Dest,const char * Source,size_t _Count)`
    

    (2)头文件

    string.h
    

    (3)功能

    将const char * Source所指代的字符串,拼接到char *Dest后面。根据size_t _Count
    的值确定拼接char *Dest所指向的字符的最大个数
    

    (4)基础实例代码

    	char a[30]="zobol\0";
    	char b[11]="的魔法小屋\0";
    
    	strncat(a,b,10); 
    	printf("%s\n",a);
    

    (5)输出情况
    在这里插入图片描述

    (6)基础实例代码2

    	char a[30]="zobol\0";
    	char b[11]="的魔法小屋\0";
    
    	strncat(a,b,8); //少拼接2个字符 
    	printf("%s\n",a);
    

    (7)输出情况2
    在这里插入图片描述
    (8)问题1:最大size_t _Count的值怎么确定?
    回答:用char * Dest的(数组长度-1)减去strlen(Source)的值

    a_length = N-strlen(b);
    

    (9)问题2:如果char * Dest指向的字符数组总长度不够怎么办》
    回答:C语言依旧不会自动避免,这里会产生跟strcat一样的溢出越界错误。

    (10)问题3:size_t _Count超过拼接字符串数量怎么办?
    回答:没关系,超过没有关系,会自动读取到"\0"处停止

  • 相关阅读:
    Redis 记录
    flink 流控机制详解
    备份和快照的区别
    LVS 总结
    Keepalived 总结
    OpenResty 总结
    Lua 总结
    Element-UI 总结
    Java transient 关键字
    Activiti 框架
  • 原文地址:https://www.cnblogs.com/zobol/p/14354890.html
Copyright © 2011-2022 走看看