A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© chenhuan_ccit 中级黑马   /  2014-11-1 21:13  /  543 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1.地址及取地址运算符
   1.每一个存储单元都有一个编号,这个编号称为存储单元的地址。
   2.如果在程序中定义了一个变量,系统会根据变量的类型为变量分配相应字节的存储空间,用于存放数据,存放的数据称为内存单元的内 容。        而系统为变量分配的存储空间的首个存储单元的地址称为变量的地址。
   3.获取变量的地址: &变量名“&”是单目运算,优先级别是第2级,结合方向为右结合。
   4.通过存储空间的地址,可以访问存储空间,从而获得存储空间的内容。因此,我们也把地址就形象地称为指针。
2.指针变量存放地址的变量称为指针变量,指针变量的值为地址。
3.指针变量的指向如果指针变量p中存放的是变量a的地址,则称指针变量p指向变量a。这样,对变量a的访问就有两种方式,一种是直接通过变量a来访问;另一种是通过指向变量a的指针变量p来访问。
int *pa;/*pa是一个指针变量,它的值应该是某个整型变量的地址*/
float *pb; /*pb是基类型为float的指针变量*/
char *pc;/*pc是基类型为char的指针变量*/
定义指针变量的一般形式为:
[存储类别] 类型标识符  *变量名;
说明:
1. *表示这是一个指针变量,不可省略;
2.变量名即为定义的指针变量名;
3.类型标识符表示指针变量所指向的变量的数据类型,定义指针时必须指明基类型。
1. *:指向运算符(或称“间接访问” 运算符)
使用格式: *指针变量
其中:*为指向运算符,优先级别和结合方向与&相同。
作用:求运算符后面的指针变量所指向的变量的值,即指针变量所指向的存储空间的内容。
说明:运算符“*”后面必须是指针变量,而不能是普通变量。
int a=3,b=2,*p;
p=&a;
a=a+b;
printf("%d,%d\n",a,*p);//*p是p指向的变量
输出结果为:5,5
函数的参数不仅可以是整型、实型、字符型等数据,还可以是指针类型。它的作用是将一个地址值传递给被调函数中的形参指针变量,即在函数调用时确定形参指针的指向。


评分

参与人数 1技术分 +1 收起 理由
星河鹭起 + 1

查看全部评分

2 个回复

倒序浏览
挺好的~
回复 使用道具 举报
顺便也学习一下
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马