三、数组与指针
数组与指针有密切的联系。数组名本身就是该数组的指针, 反过来, 也可以把
指针看成一个数组, 数组名和指针实质上都是地址, 但是指针是变量, 可以作运算。
而数组名是常量, 不能进行运算。
例如:
main()
{
char s[30], *p; /*定义字符型数组和指针变量*/
p=s; /*指针p指向数组s的第一个元素s[0]的地址*/
.
.
.
*(p+8); /*指针p指向数组s的第9个元素s[8]的地址*/
.
.
.
}
由上例可以看出数组和指针有如下关系:
(p+i)=&(s[i])
*(p+i)=s[i]
因此, 利用上述表达式可以对数组和指针进行互换。两者的区别仅在于: 数组
s是程序自动为它分配了所需的存储空间; 而指针p则是利用动态分想函数为它分配
存储空间或赋给它一个已分配的空间地址。
5. 运算符
Turbo C的运算符非常丰富, 主要分为三大类: 算术运算符, 关系运算符与
逻辑运算符, 按位运算符。除此之外, 还有一些用于完成特殊任务的运算符。下
面分别进行介绍。
5.1 算术运算符
Turbo C的算术运算符如下:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
操作符 作用
────────────────────────────
+ 加, 一目取正
- 减, 一目取负
* 乘
/ 除
% 取模
-- 减1
++ 加1
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
一、一目和二目操作
一目操作是指对一个操作数进行操作。例如: -a是对a进行一目负操作。
二目操作(或多目操作)是指两个操作数(或多个操作数)进行操作。
在Turbo C中加、减、乘、除、取模的运算与其它高级语言相同。需要注意