6.2.1指针变量的定义
在C程序中,存放地址的指针变量需专门定义;
int*ptr1;
float*ptr2;
char*ptr3;
表示定义了三个指针变量ptr1、ptr2、ptr3。ptr1可以指向一个整型变量,ptr2可以指向一个实型变量,ptr3可以指向一个字符型变量,换句话说,ptr1、ptr2、ptr3可以分别存放整型变量的地址、实型变量的地址、字符型变量的地址。
定义了指针变量,我们才可以写入指向某种数据类型的变量的地址,或者说是为指针变量赋初值:
int*ptr1,m=3;
float*ptr2,f=4.5;
char*ptr3,ch='a';
ptr1=&m;
ptr2=&f;
ptr3=&ch;
上述赋值语句ptr1=&m表示将变量m的地址赋给指针变量ptr1,此时ptr1就指向m。三条赋值语句产生的效果是ptr1指向m;ptr2指向f;ptr3指向ch。用示意图6-3描述如下:
需要说明的是,指针变量可以指向任何类型的变量,当定义指针变量时,指针变量的值是随机的,不能确定它具体的指向,必须为其赋值,才有意义。 财软,联盟,fs119.net
6.2.2指针变量的引用
利用指针变量,是提供对变量的一种间接访问形式。对指针变量的引用形式为:
*指针变量
其含义是指针变量所指向的值。
[例6-1]用指针变量进行输入、输出。
main()
{
int*p,m;
scanf("%d",&m);
p=&m;/*指针p指向变量m*/
printf("%d",*p);
/*p是对指针所指的变量的引用形式,与此m意义相同*/
}
运行程序:
RUN¿
3¿
3
上述程序可修改为:
main()
{
int*p,m;
p=&m;
scanf("%d",p);/*p是变量m的地址,可以替换&m*/
printf("%d",m);
}
运行效果完全相同。请思考一下若将程序修改为如下形式:
main()
{
int*p,m;
scanf("%d",p);
p=&m;
printf("%d",m);
}
会产生什么样的结果呢?事实上,若定义了变量以及指向该变量的指针为:
inta,*p;
若p=&a;则称p指向变量a,或者说p具有了变量a的地址。在以后的程序处理中,凡是可以写&a的地方,就可以替换成指针的表示p,a就可以替换成为*p。
在C程序中,存放地址的指针变量需专门定义;
int*ptr1;
float*ptr2;
char*ptr3;
表示定义了三个指针变量ptr1、ptr2、ptr3。ptr1可以指向一个整型变量,ptr2可以指向一个实型变量,ptr3可以指向一个字符型变量,换句话说,ptr1、ptr2、ptr3可以分别存放整型变量的地址、实型变量的地址、字符型变量的地址。
定义了指针变量,我们才可以写入指向某种数据类型的变量的地址,或者说是为指针变量赋初值:
int*ptr1,m=3;
float*ptr2,f=4.5;
char*ptr3,ch='a';
ptr1=&m;
ptr2=&f;
ptr3=&ch;
上述赋值语句ptr1=&m表示将变量m的地址赋给指针变量ptr1,此时ptr1就指向m。三条赋值语句产生的效果是ptr1指向m;ptr2指向f;ptr3指向ch。用示意图6-3描述如下:
需要说明的是,指针变量可以指向任何类型的变量,当定义指针变量时,指针变量的值是随机的,不能确定它具体的指向,必须为其赋值,才有意义。 财软,联盟,fs119.net
6.2.2指针变量的引用
利用指针变量,是提供对变量的一种间接访问形式。对指针变量的引用形式为:
*指针变量
其含义是指针变量所指向的值。
[例6-1]用指针变量进行输入、输出。
main()
{
int*p,m;
scanf("%d",&m);
p=&m;/*指针p指向变量m*/
printf("%d",*p);
/*p是对指针所指的变量的引用形式,与此m意义相同*/
}
运行程序:
RUN¿
3¿
3
上述程序可修改为:
main()
{
int*p,m;
p=&m;
scanf("%d",p);/*p是变量m的地址,可以替换&m*/
printf("%d",m);
}
运行效果完全相同。请思考一下若将程序修改为如下形式:
main()
{
int*p,m;
scanf("%d",p);
p=&m;
printf("%d",m);
}
会产生什么样的结果呢?事实上,若定义了变量以及指向该变量的指针为:
inta,*p;
若p=&a;则称p指向变量a,或者说p具有了变量a的地址。在以后的程序处理中,凡是可以写&a的地方,就可以替换成指针的表示p,a就可以替换成为*p。
财软联盟 fs119.net
相关文章
C语言的预处理程序与注释 C语言程序应用举例 一维数组 二维数组 多维数组 数组的初始化 指针与指针变量 指针变量的定义与引用 指针运算符与指针表达式 指针与数组 指针的地址分配 指针数组 指向指针的指针 main函数的参数 结构体类型变量的定义和引用 结构体数组的定义和引用 链表的建立、插入和删除 共用体 缓冲文件系统 非缓冲文件系统 C语言文件系统应用举例 C语言入门必备手册 用户的第一个C程序 C语言入门之数据类型(1)
Google.cn搜索关键字:
引用 定义 变量 指针 指向 ptr1 可以 地址 ptr2 ptr3
Google.cn搜索相关文章:
谷歌中搜索全球网 指针变量的定义与引用
百度中搜索 指针变量的定义与引用
谷歌中搜索www.fs119.net 指针变量的定义与引用
上一篇:指针运算符与指针表达式
Google.cn搜索相关文章:
谷歌中搜索全球网 指针变量的定义与引用
百度中搜索 指针变量的定义与引用
谷歌中搜索www.fs119.net 指针变量的定义与引用
下一篇:指针与指针变量
精品课程推荐
热点专题
最新主题
推荐大折扣培训课程