已有定义int a=5;int *p1 *p2且p1和p2均已指向变量a,下面不能正确赋值的是: A :a=*p1+*p2 B:p2=a c:p2=p1D:a=*p1*(*p2)具体是怎么一回事呢!求赐教

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/29 17:33:58
已有定义int a=5;int *p1 *p2且p1和p2均已指向变量a,下面不能正确赋值的是: A :a=*p1+*p2 B:p2=a c:p2=p1D:a=*p1*(*p2)具体是怎么一回事呢!求赐教

已有定义int a=5;int *p1 *p2且p1和p2均已指向变量a,下面不能正确赋值的是: A :a=*p1+*p2 B:p2=a c:p2=p1D:a=*p1*(*p2)具体是怎么一回事呢!求赐教
已有定义int a=5;int *p1 *p2且p1和p2均已指向变量a,下面不能正确赋值的是: A :a=*p1+*p2 B:p2=a c:p2=p1
D:a=*p1*(*p2)
具体是怎么一回事呢!求赐教

已有定义int a=5;int *p1 *p2且p1和p2均已指向变量a,下面不能正确赋值的是: A :a=*p1+*p2 B:p2=a c:p2=p1D:a=*p1*(*p2)具体是怎么一回事呢!求赐教
答案:B
p2是一个指针变量,后面必须将一个地址赋给它,而a是一个普通的整型变量,故赋值有误
A)p1是一个指针变量,在使用时,指针变量前面加上星号*,代表该指针变量所指向的内容.故此选项是将p1和p2所指的内容相加,再赋给a,即a=10
C)指针可以赋值给指针,即执行完p2=p,之后,p2不再指向a,而是指向p所指的内容
D)同选项A,加法运算换成乘法运算,相当于a=25

已有定义int a=5;int *p1 *p2且p1和p2均已指向变量a,下面不能正确赋值的是: A :a=*p1+*p2 B:p2=a c:p2=p1D:a=*p1*(*p2)具体是怎么一回事呢!求赐教 int a,b,*p1*p2; 请问 p1=&a和*p1=a有什么区别? swap(int *p1,int *p2) {int temp; temp=*p1; *p1=*p2; *p2=temp; } main() { int a,b; int *pointer_1,*pswap(int *p1,int *p2){int temp;temp=*p1;*p1=*p2;*p2=temp;}main(){ int a,b;int *pointer_1,*pointer_2;scanf(%d,%d,&a,&b);pointer_1=&a;pointer_2=&b;if(a int (*p1)( C++问题:已有定义“int a=10,*p1,*p2;p1=p2=&a;,下面语句中正确的是:A.a=*p1+*p2;B.p2=a;C.*p2=&a;D.&a=p2;麻烦说明错误选项的原因, C语言 int *p,*p1,*p2; int a=5,b=3; p1=&5; p2=&3; *p = *p1; // 这里为什么段错误 已有如下数组定义和f函数调用语句,则在f函数的说明中,对形参数组array的正确定义为()int a[3][4];f(a);A f(int array[][6])B f(int array[3][])C f(int array[][4])D f(int array[2][5]) 设有数据定义语句“int x[10],*p1=x,*p2=x+5;”,则下列选项中错误的是?A.P1++ B.P2-=2 C.P2-P1 D.P1+P2 #includevoid main(){int *p1,*p2,a[5]={1,3,5,7,9};for(p1=a;p1 下列数组定义错误的是 A.int x=5,a[x]; B.int aa[1]; C.int aa[2][3]; D.int a['a']; 若已定义int a,则表达式a=10,a+10,a++的值为 C语言,若有说明:int *p1,*p2,m=5,n; 以下是正确赋值语句的选项是若有说明:int *p1,*p2,m=5,n; 以下是正确赋值语句的选项是(A) p1=&m;p2=&p1;(B)p1=&m;p2=&n; *p1= *p2;(C) p1=&m;p2=p1; (D) p1=&m; *p2 = *p1 ; 1.已有定义 int a[10],*p; 则正确的赋值语句是( ).A.p=100; B.p=a[5]; C.p=a[2]+2; D.p=a+2;2.若有定义int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 则不能表示a数组元素的表达式是 ( )A.*p B.a[1] C.*a D.a[10]3.设有定义int x[6]= 1.已有定义 int a[10],*p; 则正确的赋值语句是( ).A.p=100; B.p=a[5]; C.p=a[2]+2; D.p=a+2;2.若有定义int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 则不能表示a数组元素的表达式是 ( )A.*p B.a[1] C.*a D.a[10]3.设有定义int x[6]= 1.已有定义 int a[10],*p; 则正确的赋值语句是( ).A.p=100; B.p=a[5]; C.p=a[2]+2; D.p=a+2;2.若有定义int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 则不能表示a数组元素的表达式是 ( )A.*p B.a[1] C.*a D.a[10]3.设有定义int x[6]= 若有定义int a[10],*p=a;,则p+5表示什么 假设定义了两个整型指针变量p1、p2,有如下语句p1 = new int[5];p2 = new int[10];在释放所申请的内存空间时,只需要delete [] p1和delete [] p2即可,并没有指明要归还多大的空间,请问delete是如何获知p1和p2 C语言若有定义int x[10]={0,1,2,3,4,5,6,7,8,9},*p1;则数组不为3的表达式是( )