p是指针变量,*p=a和p=&a的区别#includevoid main() { int a,b;int *pa,*pb; a=10;b=20; *pa=a;*pb=b;printf("%d,%d\n",*pa,*pb);printf("%x,%x\n",pa,pb);printf("%x,%x\n",&a,&b);}结果输出为:10,20354,7d5ffda,ffdc为什么程序最后两行输出

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/11 14:03:26
p是指针变量,*p=a和p=&a的区别#includevoid main() { int a,b;int *pa,*pb; a=10;b=20; *pa=a;*pb=b;printf(

p是指针变量,*p=a和p=&a的区别#includevoid main() { int a,b;int *pa,*pb; a=10;b=20; *pa=a;*pb=b;printf("%d,%d\n",*pa,*pb);printf("%x,%x\n",pa,pb);printf("%x,%x\n",&a,&b);}结果输出为:10,20354,7d5ffda,ffdc为什么程序最后两行输出
p是指针变量,*p=a和p=&a的区别
#include
void main()
{
int a,b;
int *pa,*pb;
a=10;b=20;
*pa=a;*pb=b;
printf("%d,%d\n",*pa,*pb);
printf("%x,%x\n",pa,pb);
printf("%x,%x\n",&a,&b);
}
结果输出为:
10,20
354,7d5
ffda,ffdc
为什么程序最后两行输出的结果不一样呢?按说应该都输出a和b的地址才对.

p是指针变量,*p=a和p=&a的区别#includevoid main() { int a,b;int *pa,*pb; a=10;b=20; *pa=a;*pb=b;printf("%d,%d\n",*pa,*pb);printf("%x,%x\n",pa,pb);printf("%x,%x\n",&a,&b);}结果输出为:10,20354,7d5ffda,ffdc为什么程序最后两行输出
1
*p=a; //表示将a的值赋给p所指单元.
p=&a; //表示将p指向a单元,即将a单元的地址赋给p.
2
int a,b;
int *pa,*pb;
a=10;b=20;
*pa=a;*pb=b; //这两个语句有问题.pa,pb是野指针,没有指向任何单元.
printf("%d,%d\n",*pa,*pb);
printf("%x,%x\n",pa,pb); //pa,pb的野指针,其值不确定.
printf("%x,%x\n",&a,&b); //输出a,b的地址.

C语言中double *p,a;p=&a;和double a,*p=&a;是不是等价的?为什么呀〜请大侠们解释一下〜是不是指针变量一定要加*?如果指针变量不加*是指什么? 以下能使指针变量p指向变量a的正确选项是?A.int a,*p=a; B.int a,p=a; C.int a,*p=*a;D.int a,*p=&a; 定义指针int *p p=a,p=&a,*p=a,*p=&a,这四个的区别! P是指针变量,p=a,其中a等价于什么? 变量p为指针变量,若p=&a,下列说法不正确的是().A:&*p==&a B:*&a==a C:(*p)++==a++ D:*(p++)==a++此题中,D错在那里? 具有相同基类型的指针变量P和数组变量Y,下列写法中不合法的是 ( )14.具有相同基类型的指针变量P和数组变量Y,下列写法中不合法的是 ( ) .A.P = Y B.*P = Y[i] C.P + & C语言问题:指针变量,数组名,字符串常量的区别.设有下面的程序段:char s[ ]=china ; char * p; p=s; 则下列叙述正确的是:(A) s和p完全相同 (B)数组s中的内容和指针变量p中的内容想等(C)s数 *p=&a 是什么含义,谁是指针变量,*p还是p 关于指针变量的引用的一点小问题 看书时看到的一段原文 把本人看糊涂了 内容如下若有定义int a,*p=&a;//说明指针P指向变量a,a是p指向的目标,可以用*p来引用a,*p与a是等价的 ,*p可当普通变量使 设有定义int m=2,n=5,*p=&n;则语句“m=*p;”的结果是().A) 指针p指向mB) 变量m的值变为5C) 变量n的值变为2D) 指针p指向m,同时变量m的值变为5B和D有什么区别啊?D错哪了? 两个指针变量*p,*q(p指向a,q指向b),p=q与p=*q有什么区别? C语言指针,int a=1; int *p; 其中p=&a和*p=&a有什么区别?p的值是否相同? 定义数组a[ ],为什么int *p=&a[0];等于int *p; p=&a[0];如果int a;int *p;p=&a;*p=a;这里的指针变量p放的是a的地址,*p就是指a的内容,如果上式成立,那么关于这个如果写成int *p=&a就不对了?为什么感觉是* 要使指针变量p指向2维数组A的第一个元素,正确的赋值是:A.p=A或p=A[0][0] B.p=A[0]或p=A[0][0]C.p=A[0]或p=&A[0][0]D.p=A或p=&A[0][0] p是指向数字元素a【i】的指针变量,与*p+*p--等价的描述是() 指针q=p->a与p->a的区别是什么 两道关于null的c语言题目:1 设有定义:int x=0,*p;立刻执行以下语句,正确的是:a.p=x; b.*p=x;c.p=null; d.*p=null2设变量p是指针变量,语句p=null;是给指针变量赋null值,它等价于a.p= ; b.p=‘0’; 行指针的p = a;与列指针的p = *a;有什么区别啊?