谭浩强版《C++程序设计》知识点(8)
时间:2025-04-20
时间:2025-04-20
为谭浩强版教材,楼建华教授总结
*10.7 在VC6.0中,每个指针占4 *10.8 用于存储指针的变量称作指针变量。指针变量的定义格式为:
存储方式 基类型 *指针变量
其中,基类型是指针变量拟指向变量的数据类型,*表示其后的变量是一个指针变量,它不是变量名的组成部分,也不是指向运算。
10.9 指针的值为无符号16进制整数,它与数不兼容,除0外,不允许把数直接赋给指针变量。 *10.10 对任意数组或指针a有,&a[i]=a+i,a[i]=*(a+i),特别地,&a[0]=a,a[0]=*a。p+i相当于向后跳过i个数据(而非跳过i个字节),[]称作下标运算或变址运算。由此即可定义下述运算:-、++、--、+=、-=。
*10.11 数组作为函数参数,它只传递数组的基址。下标变量可作为实参,但不可作为形参,实际上,它被误认为数组。
*10.12 二维数组的基址以行为基类型。对于二维数组a,a+i(即&a[i])指向第i+1行(或者说,行i、i行),*(a+i)(即a[i])指向a[i][j],即,&a[i][j]=*(a+i)+j=a[i]+j,a[i][j]=*(*(a+i)+j)=*(a[i]+j)。 10.13 二维数组的行指针变量的定义格式为:二维数组的类型 (*行指针变量)[列数]
*10.14 指针运算可简单地分为以下6类:
⑴单目运算(9个):!、&、*、++、--、()、sizeof、delete和new(参见7.1.7)
⑵指针与指针间运算(10个):=、-、>、>=、<、<=、==、!=、&&、||
⑶指针与整数间运算(5个):+、+=、-、-=、[]
⑷流对象与指针运算(2个):>>、<<
⑸结构体指针(参见7.1.5)或对象指针(参见9.5)与其成员间运算:->
⑹合法的三目运算、逗号运算
以上,+、-、++、--、+=、-=均以基类型数据为基本单位。
10.15 函数名是函数的入口,即,指向自身的指针,称作函数的指针,简称函数指针。
*10.16 函数指针也是一种数据类型,用于存储函数指针的变量称作函数指针变量,其定义格式为: 格式 函数值类型(*函数指针变量)(形参类型表)
其中,类型均是函数指针变量拟指向函数的类型。
*10.17 如果p是指向函数f,则函数名f可用p和(*p)表示。
10.18 函数返回值可以是指针,定义函数的一般格式为:
函数值的基类型*函数名(形参列表){函数体}
10.19 以指针为基类型的指针称作指向指针的指针,以指向指针的指针为值的变量称作指向指针的指针变量,其定义格式为:
存储方式 基类型 **指向指针的指针变量
10.20 以指针为元素的数组称作指针数组。
上一篇:中国近代社会生活的变迁
下一篇:2007编目研究会工作汇报