数组和指针( www. ). 001数组和vector的区别在于,数组的长度是固定的.数组一经创建,就不允许动态的修改长度.指针可以像迭代器一样用于遍历和检索数组中的元素. 现代C++程序应该尽量使用vector和迭代器类型,而避免使用低级的数组和指针.只有在强调速度时,才在类实现的内部使用数组和指针. 002数组的缺陷在于没有size()操作,也就是程序员无法知道一个给定数组的长度. 如果需要更改数组的长度,就必须再声明一个更大的数组,把原来数组的内容copy到新数组中去. 003引用不能定义数组.没有所有元素都是引用的数组. 004非const变量和 [阅读全文] [PDF]
现在到揭露数组名本质的时候了,先给出三个结论: (1)数组名的内涵在于其指代实体是一种数据结构,这种数据结构就是数组; (2)数组名的外延在于其可以转换为指向其指代实体的指针,而且是一个指针常量; (3)指向数组的指针则是另外一种变量类型(在WIN32平台下,长度为4),仅仅意味着数组的存放地址! 1、数组名指代一种数据结构:数组 现在可以解释为什么第1个程序第6行的输出为10的问题,根据结论1,数组名str的内涵为一种数据结构,即一个长度为10的char型数组,所以sizeof(str)的结果为这个数据结构占据的内存大小:10字节 [阅读全文] [PDF]
虽然用字符指针变量和字符数组都能表示和处理字符串,但它们二者之间是有区别的,不应混淆。
(1)字符数组由若干个元素组成,每个元素中存放字符串的一个字符,而字符指针变量中存放的是字符串的首地址。
(2)初始化方式不同。对字符数组初始化要用stati‘c存储类别,在编译时进行。而对字符指针变量初始化不必加static,在实际执行时进行。
(3)赋值方式不同。对字符数组不能整体赋值,只能转化成份量,对单个元素进行。而字符指针变量赋值可整体进行。例如: chars[10]; a=\"C++\";/*错,s是常量,怎能被赋值*/
(4)在定义一个字符数组时,编 [阅读全文] [PDF]
数组的指针即整个数组在内存中的起始地址,而数组元素的指针是数组中某一元素所占存储单元的地址。 利用指针法引用数组元素能使目标程序质量高、占内存少、运行速度快。 C++语言中规定:数组名就代表数组首地址,也就是数组第0号元素的地址。如 int a[10]; int *p; p=&a[0];/*与p=a,是等价的*/ p+i或a+i就是a[i]元素的存储地址,即它们都指向数组的第i号元素a[i]。所以*(p+i)或*(a+i)就与a[i]是等价的。实际上,在编译时,编译程序把a[i]处理成*(a+i)。因此利用此方法就可访问到数组元素。如: main( [阅读全文] [PDF]
1 共5条 分1页
- 单片机数码管:51单片机数码管显示的好帮手---MAX...
- 点阵显示屏:智能点阵显示屏HCMS-29xx/39xx及其应用
- 单片机教程:单片机编程入门七
- 汇编语言指令集:IBM-PC汇编语言指令集
- 数据传送指令:MCS-51数据传送指令
- 0083智能工社:浅谈足球游戏的人工智能
- 提拔将领:即时战略游戏将领指挥AI方案设想
- directinput:DirectInput 鼠标编程入门
- 实现爆炸后的振动效果
- 飞机射击类小游戏:有关飞机射击类游戏的设计原理
- 音效最好的播放器:游戏音乐和音效的播放
- 游戏调试:利用双计算机调试游戏程序
- 多任务处理:游戏中的多任务处理
- 电脑游戏中的人工智能制作
- 系统升级:角色扮演游戏的升级系统研究
- rpg游戏制作:深入RPG游戏制作—图形篇
- directdraw:通向DirectDraw的捷径
- 3d场景:如何在3D场景中加入Fog
- 游戏搜索:论游戏中的搜索问题(初级篇)
- directx如何使用:使用DirectX优化声音特性