tyzw.net
当前位置:首页 >> int n=2,*p=&Amp;n >>

int n=2,*p=&Amp;n

A B C都是对的 A p=q P和Q都为指针变量,让p指向q的地址 B *p = *q 让p指向地址的值 等于q指向地址的值 *取值符号 C n=*q; D p=n 不能这样写,p是指针变量,是代表地址,而n是值 写成p=&n就对了

ABC都是对的,D是非法的,p是个地址,而n是个整形值,不能相乘; 可以改成*p*n;结果是4 自己在VC或者TC里面实验下就知道了

28p=q;*p=*q;n=*qp=n可以看出p和q是普通变量,n是指针变量,所以p=n是错误的。*p=&n 指针*p取变量n的地址*q=p 指针*q用变量p的数据作为地址29float fun(int x, int y){return(x+y);}main() {int a=2,b=5,c=8; printf(%3.0f\n, fun((int)fun(a+c,...

//定义指针的时候初始化p的值为n的地址int */*这之前是p的类型*/p = &n/*给p赋值*/;//给p赋值p = &n;/*同上*/

比如: int n; int *p=&n; 这表示p指针指向n变量的地址。 int n,*p; *p=&n; 这样是错误的写法。应该为: p=&n;让p指向n的地址。

D a是整型数, int *p,*q定义了指针, p,q是指向整型的指针。 p取得a的地址,而q取得p的地址 p,q是指针(也就是一个地址),而*p和*q是这个指针指向的整型数值(存放在这个地址的值)。 A)把q的地址赋给p,则p和q完全一样了,都指向一个数2 B)...

n是整数,p是整数指针,q是双重指针。 A:p=1 属于将地址1赋给p,非法。 B:*q=2 这里*q相当于一个整数指针,问题同上,非法。 C:q=p 相当于把p的地址赋给q,不能说错,但是不同维数的指针互相赋值,容易出错。 以上三种都是编译没有问题。 D比...

这个q是一个变量,根据你书写的内容,这里的q之前肯定有个定义,int q。 代表他是一个整形变量。 然后呢,int *p=q; 应该是 int *p=&q; 才正确。

一步步分析: *p = &n; 为定义指针p,同时指向n的地址; m = *p; 为对m重新赋值,此时*p为对地址&n取值,即n的值5,,所以m值变为5; 但此语句不是指向操作,本质上说可以是int = int操作,所以p的指向还是n的地址。

inv是将数组x中下标0到n-1的数据逆置。 void inv(int *x, int n) { int temp,*p,*i,*j,m=(n-1)/2; //m为数组中点 i=x; j=x+n-1; p=x+m; //i为数组首部,j为尾部,p为中点 for(;i

网站首页 | 网站地图
All rights reserved Powered by www.tyzw.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com