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"处停止

  • 相关阅读:
    B. Shift and Push
    Codeforces Round #392 (Div. 2)
    D. Make a Permutation!
    C. Bus
    B. Polycarp and Letters
    A. Fair Game
    python-随机数的产生random模块
    python的时间处理-time模块
    python-迭代器与生成器
    python-装饰器
  • 原文地址:https://www.cnblogs.com/zobol/p/14354890.html
Copyright © 2011-2022 走看看