C++ Primer Plus学习:第四章 复合类型(5)

本文深入探讨了指针和字符串的基础概念,包括如何通过指针访问字符串,如何使用new和delete进行动态内存管理,以及自动存储、静态存储和动态存储的区别。文章还介绍了正确处理字符串的方法,避免使用赋值操作符而应当采用strcpy()或strncpy()。
指针和字符串
  数组名是第一个元素地址,因此cout对象认为char的址是字符串的地址,继续打印字符串,直到遇到空字符(\0)为止
  cout的供一个字符的地址时,则它从该地址开始打印,直到遇到空字符(\0)为止
  将字符串读入程序时,应使用已分配的内存的地址。该地址可以是数组名,也可以是使用new初始化过的指针
new创建动态结构
  步骤
    创建结构
      创建时需要使用:结构类型与new
      inflatable* ps = new inflatable;
        inflatable:结构类型
        new
    访问其成员
动态存储、静态存储、自动存储
  自动存储
    函数内部定义的常规变量,使用自动存储空间。
    函数调用时产生,函数结束时消亡
  静态存储
    整个执行期间都存在的存储方式
    使变量成为静态的方式
      在函数在外面定义
      在声明变量时使用关健字static
  动态存储
    new
    delete
Note
  char数组名、指向char的指针及用引号括起的字符串常量都被解释为字符串第一个字符的地址
  应使用strcpy()或者strncpy(),而不是赋值操作符来将字符串赋给数组

  如果结构标识符是结构名,则使用句点操作符。如果标识符是批向结构的指针,则使用箭头操作符。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值