6.3.1指针运算符与指针表达式
在C中有两个关于指针的运算符:
•&运算符:取地址运算符,&m即是变量m的地址。
•*运算符:指针运算符,*p表示其所指向的变量。
[例6-2]从键盘输入两个整数,按由大到小的顺序输出。
main()
{
int*p1,*p2,a,b,t;/*定义指针变量与整型变量*/
scanf("%d,%d",&a,&b);
p1=&a;/*使指针变量指向整型变量*/
p2=&b;
if(*p1
{/*交换指针变量指向的整型变量*/
t=*p1;
*p1=*p2;
*p2=t;
}
printf("%d,%d\n",a,b);
}
在程序中,当执行赋值操作p1=&a和p2=&b后,指针实实在在地指向了变量a与b,这时
引用指针*p1与*p2,就代表了变量a与b。
运行程序:
RUN
3,4
4,3
在程序运行过程中,指针与所指的变量之间的关系如图6-4所示:
当指针被赋值后,其在内存的安放如a),当数据比较后进行交换,这时,指针变量与所指向的变量的关系如b)所示,在程序的运行过程中,指针变量与所指向的变量其指向始终没变。
下面对程序做修改。
C语言-基础教程-指针运算符与指针表达式.doc
下载Word文档到电脑,方便收藏和打印[全文共535字]
编辑推荐:
下载Word文档