c语言程序设计--指针

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

c语言程序设计--指针

一、地址

1.内存是计算机进行数据运算的物理空间,地址即内存中的指定位置。

2.操作符“&”作用于变量,找到地址。操作符“*”作用于地址,取得该地址内存中存储的变量。

二、地址应用

1.变量地址做函数参数

void fun1(int *a)

{

函数体;

}

int main()

{

int a=5;

fun1(&a);

return 0;

}

2.数组做函数参数

void fun1(int a[])

{

函数体;

}

int main()

{

int a[5]={5,4,3,21,7};

fun1(a);

return 0;

}

三、指针

1.指针是存放变量地址的变量

2.声明格式:类型说明符*标识符;

3.指针可以指向变量、常量、数组、字符串、结构体、函数。

4.指针需要初始化

例:int *a;

int num=5;

a=#

5.指针指向同一变量时可以进行比较运算,例如当两个指针指向同一数组时,比较运算表示比较两个指针在数组中位置的大小。两个指针相等表示他们指向数组中的同一个元素。

6.指针和整数进行加减运算,编译器会根据所指对象的数据长度对该整数进行放大,char的放大因子为1,int和short的放大因子为2,long和float的放大因子为4,double的放大因子为8。

7.当两个指针指向同一变量时,他们可以进行减运算。例如,当两个

指针指向同一个数组时,他们的差是两个指针之间元素的个数。相减的结果遵守对象类型的字节长度的缩减规则。

8.指向数组的指针

数组在内存空间中的存储是连续的,数组名表示数组的第一个元素的地址。

相关文档
最新文档