zoukankan      html  css  js  c++  java
  • 理解 strcpy方法

    1 char* strcpy(char* strDest, const char* strSrc)
    2 {
    3  assert((strDest!=NULL) && (strSrc !=NULL));  //strDest和strSrc不为空
    4  char* address = strDest;      //保存strDest,用于返回
    5  while( (*(strDest++) = *(strSrc++)) != '' );  //逐个字符赋值
    6  return address;         //返回地址    
    7 }

    注意:

    1、栈上的char数组,数组名就是一个指针,这个指针的指向不能修改,也就是不能加加减减或者赋值,可以通过[]访问数组元素。

    2、文本字符串赋值给char指针,这个指针指向的内容不能修改。

    3、调用strcpy方法的时候,要保证:

      a、保证两块内存没有重合的地方;

      b、strDest最好有刚刚好的内存,可以容纳strSrc的内容。如果strDest内存大了,造成浪费。如果strDest内存小了,溢出,占到其他的内存,导致未定义行为。

  • 相关阅读:
    19. 删除链表的倒数第 N 个结点
    相交链表
    环形链表2
    环形链表
    K8s 网络通讯
    Hutool-二维码生成
    Hutool-加解密
    Hutool-解析JSON
    Hutool-读取配置文件中的配置
    Hutool-操作图片
  • 原文地址:https://www.cnblogs.com/nzbbody/p/3565176.html
Copyright © 2011-2022 走看看