指针变量几个问题的进一步说明
发表:2023-08-29 12:00:49 阅读:71

电子资讯】指针变量几个问题的进一步说明

指针变量可以进行某些运算,但其运算的种类是有限的。它只能进行赋值运算、部分算术运算及关系运算。

1.取地址运算符“&”是单目运算符,其结合性为自右至左,其功能是取变量的地址。取内容运算符“*”是单目运算符,其结合性为自右至左,用来表示指针变量所指的变量。在*运算符之后跟的变量必须是指针变量。需要注意的是指针运算符“*’和指针变量说明中的指针说明符“*”不是一回事。在指针变量说明中,“*"是类型说明符,表示其后的变量是指针类型。而表达式中出现的“*”则是一个运算符用以表示指针变量所指的变量。

2.指针变量的运算有:赋值运算、加减算术运算、两个指针变量之间的运算等。

3.赋值运算:把一个变量的地址,一个数组变量的首地址,一个函数的首地址赋值给指针

{

CLI();

XDIV =Ox00;

XMCRA=Ox00;

MCUCR=Ox00;

EIMSK=Ox00:

TIMSK=0x00:

SEt();

}

swap(int*pl,int*p2)

{

int temp;

temp=*pl:

*pl=*p2:

*p2=temp:

)

void main()

(

init_devices();

int a=5,b=6;

int*pointerl,*pointer2:

pointerl=&a;pointer2=&b;

if(a

printf(”\n%d,%d\n”,a,b);

)

 

对程序的说明:

swap()是用户定义的函数,它的作用是交换两个变量(a和b)的值。swap函数的形参pl、p2是指针变量。

程序运行时,先执行main()函数,a和b的值在声明中即进行了初始化。然后将a和b的地址分别赋给指针变量pointerl和pointer2,使pointerl指向a,pointer2指向b。接着执行if语句,由于a的值互换。

 

 

电子街更多推荐 

地址指针的基本概念

指针变量的引用 

指针变量作为函数参数

推荐品牌: