zoukankan      html  css  js  c++  java
  • strcpy 和 strnpy 区别

    与strncpy的区别
    第一种情况:
    1
    2
    3
    4
        char* p="how are you ?";    
        char name[20]="ABCDEFGHIJKLMNOPQRS";
        strcpy(name,p); //name改变为"how are you ? "====>正确!
        strncpy(name,p, sizeof(name));//name改变为"how are you ?" =====>正确!后续的字符将置为NULL
    第二种情况:
    1
    2
    3
    4
    5
    6
        char* p="how are you ?";
        char name[10];
        strcpy(name,p); //目标串长度小于源串,错误!
        name[sizeof(name)-1]=''//和上一步组合,弥补结果,但是这种做法并不可取,因为上一步出错处理方式并不确定
        strncpy(name,p,sizeof(name)); //源串长度大于指定拷贝的长度sizeof(name),注意在这种情况下不会自动在目标串后面加''
        name[sizeof(name)-1]=''//和上一步组合,弥补结果
  • 相关阅读:
    Linux内核编译
    Linux系统启动流程(2)
    Linux系统启动流程及grub重建(1)
    shell函数
    css基础
    前端之练习抽屉首页
    css简单分页
    mysql索引提高查询速度
    html基础
    博客园css样式代码
  • 原文地址:https://www.cnblogs.com/wxmdevelop/p/4904014.html
Copyright © 2011-2022 走看看