量, 而是把存放该字符串的字符数组的首地址装入指针变量。 在后面还将详细介绍。
⑥把函数的入口地址赋予指向函数的指针变量。例如: $$"$$ 为函数名
加减算术运算
对于指向数组的指针变量,可以加上或减去一个整数 。设 是指向数组 的指针变量,则
3'4'33'33'44'44运算都是合法的。指针变量加或减一个整数 的意义是把指针指
向的当前位置指向某数组元素向前或向后移动 个位置。应该注意,数组指针变量向前或向后移动一
个位置和地址加 或减 在概念上是不同的。因为数组可以有不同的类型, 各种类型的数组元素所占
的字节长度是不同的。如指针变量加 ,即向后移动 个位置表示指针变量指向下一个数据元素的首
地址。而不是在原地址基础上加 。
例如:
,-'
" 指向数组 ,也是指向 ,-
"3 指向 ,-,即 的值为 ,-指针变量的加减运算只能对数组指针变量进
行, 对指向其它类型变量的指针变量作加减运算是毫无意义的。两个指针变量之间的运算只有指向
同一数组的两个指针变量之间才能进行运算, 否则运算毫无意义。
①两指针变量相减
两指针变量相减所得之差是两个指针所指数组元素之间相差的元素个数。实际上是两个指针值地
址相减之差再除以该数组元素的长度字节数。例如 $ 和 $是指向同一浮点数组的两个指针变量,
设 $ 的值为 5,$ 的值为 5,而浮点数组每个元素占 个字节,所以 $4$ 的结果
为545",表示 $ 和 $ 之间相差 个元素。两个指针变量不能进行加法运算。 例
如, $3$ 是什么意思呢6毫无实际意义。
②两指针变量进行关系运算
指向同一数组的两指针变量进行关系运算可表示它们所指数组元素之间的关系。例如:
$""$ 表示 $ 和 $ 指向同一数组元素
$7$ 表示 $ 处于高地址位置
$89 表示 9 处于低地址位置
%&
"'!"''''!
"
!" !
"3!
"!
$(")*:!")*:3!")*:!")*:(''!'3!'!
$(")*:")*:(''
+
######
说明 '! 为整型指针变量
给指针变量 赋值, 指向变量 。
给指针变量 ! 赋值,! 指向变量 !。
本行的意义是求 3! 之和, 就是 ,! 就是 !。
本行是求 ! 之积。
输出结果。
输出结果。
######
指针变量还可以与 比较。设 为指针变量,则 "" 表明 是空指针,它不指向任何变量;;
" 表示 不是空指针。空指针是由对指针变量赋予 值而得到的。例如: <*1=1>?22
">?22对指针变量赋 值和不赋值是不同的。指针变量未赋值时,可以是任意值,是不能使用的 。
否则将造成意外错误。而指针变量赋 值后,则可以使用,只是它不指向具体的变量而已。
%&
'!''%@'%
$(0110%!1A:(
$()*)*)*(' ' !'