指针和字符串
数组名是第一个元素地址,因此cout对象认为char的址是字符串的地址,继续打印字符串,直到遇到空字符(\0)为止
cout的供一个字符的地址时,则它从该地址开始打印,直到遇到空字符(\0)为止
将字符串读入程序时,应使用已分配的内存的地址。该地址可以是数组名,也可以是使用new初始化过的指针
new创建动态结构
步骤
创建结构
创建时需要使用:结构类型与new
inflatable* ps = new inflatable;
inflatable:结构类型
new
访问其成员
动态存储、静态存储、自动存储
自动存储
函数内部定义的常规变量,使用自动存储空间。
函数调用时产生,函数结束时消亡
静态存储
整个执行期间都存在的存储方式
使变量成为静态的方式
在函数在外面定义
在声明变量时使用关健字static
动态存储
new
delete
Note
char数组名、指向char的指针及用引号括起的字符串常量都被解释为字符串第一个字符的地址
应使用strcpy()或者strncpy(),而不是赋值操作符来将字符串赋给数组
数组名是第一个元素地址,因此cout对象认为char的址是字符串的地址,继续打印字符串,直到遇到空字符(\0)为止
cout的供一个字符的地址时,则它从该地址开始打印,直到遇到空字符(\0)为止
将字符串读入程序时,应使用已分配的内存的地址。该地址可以是数组名,也可以是使用new初始化过的指针
new创建动态结构
步骤
创建结构
创建时需要使用:结构类型与new
inflatable* ps = new inflatable;
inflatable:结构类型
new
访问其成员
动态存储、静态存储、自动存储
自动存储
函数内部定义的常规变量,使用自动存储空间。
函数调用时产生,函数结束时消亡
静态存储
整个执行期间都存在的存储方式
使变量成为静态的方式
在函数在外面定义
在声明变量时使用关健字static
动态存储
new
delete
Note
char数组名、指向char的指针及用引号括起的字符串常量都被解释为字符串第一个字符的地址
应使用strcpy()或者strncpy(),而不是赋值操作符来将字符串赋给数组
如果结构标识符是结构名,则使用句点操作符。如果标识符是批向结构的指针,则使用箭头操作符。


本文深入探讨了指针和字符串的基础概念,包括如何通过指针访问字符串,如何使用new和delete进行动态内存管理,以及自动存储、静态存储和动态存储的区别。文章还介绍了正确处理字符串的方法,避免使用赋值操作符而应当采用strcpy()或strncpy()。
1881

被折叠的 条评论
为什么被折叠?



