下列定义不正确的是: 。 A.int i, *p=i; B.int *p,i; C.int i,*p=&i; D.int i,*p; 怎么解释?

如题所述

c是错的,*p是指向变量i的,p为指针变量,p中存放的是i的地址,根据这个地址找到i,应该改为
p=&i; //意思是把i对应的地址给指针变量p。
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2018-05-10
A
int i, *p = i 等价于
int i;
int *p = i;
int *p是指针定义,赋初值应该是个地址本回答被提问者和网友采纳
第2个回答  2012-07-05
选A//应该如c的形式
第3个回答  2012-07-05
A,变量赋值给指针要取址符。

求c++大神??下列关于指针的用法中,错误的是( )。 A.int i; int
正确答案是:B 因为p没有初始化所以其指向是不确实的

判断题】int i,*p=&i;是正确的c 说明。
这是声明了一个指向int的指针变量 p ,同时初始化为指向 i 。

int i,*p;*p=i;这个是对是错?为什么答案说这个错了。
p=&i;整型数据不能直接赋值给指针,而是要赋值地址给指针。否则会报类型错误。而如果*p=i 在这里p本身并没有分配任何空间,所以*p是一个非法操作,其本质为到一个随机的地址上去取值,这个会造成程序崩溃的

...是正确的 a,int *p=a; b,int p=*a;c,int *p=&a;d,int p=&a_百度知...
c是正确的,但是在c语言里面a,c,d,都是允许的。a是一个int型变量,b选项中,*a是把a中存储的地址位置上的对应内容取出来,但是a本身就不是指针,也就没有表明其所指的位置存储的是什么类型的数据,所以没有任何意义。而a选项中是将a中的值当做地址数据赋值给了一个指向整型变量的指针,那就...

int i,*p=&i;是正确的C说明 ?
是正确的,p是指向整数i的指针。编译通过了

国家开放大学《程序设计基础》形考任务1试题
1. 在C语言中,函数返回值的类型是由函数定义时指定的类型决定的。2. 在函数调用时,实际参数和形式参数可以同名。3. 语句int *p;说明了p是一个指向int型数据的指针。4. 下列指针定义不正确的是int *p=&i,i;。5. 对指针变量p的正确定义和初始化是int *p=a;。6. 对数组元素的正确引用是*(...

int i,*p=&i; 和int i=5,*p=&i ;以及int i=5,*p;p=&i;还有 int *p=5...
以上这两种实现的功能是一样的,即定义一个指针指向整形数据a。 根据这些过程,那你的提问也就非常容易了,int i,*p=&i 是可以的,int i=5,*p=&i 也是可以的,int i=5,*p;p=&i 也对。最后一个的话严格的话来讲是正确的,即定义一个指向内存中地址为5 的地址,但结合你的语境的话应该...

c语言定义时 int i,j,*p=i;和int i,j,*p=&i;有什么区别?能详细解释下...
楼主,概念没弄清楚 p 在定义时代表,定义的是指针类型, 在使用的时候代表的是解引用 &i ,代表的是取变量i 的地址,int *p=&i;表示定义一个指针变量的同时,并把i的地址赋给p int *p=i; 这个的意思是,把i里存储的内容当做地址赋给p ...

C语言,若有int i; *p=&i ; p=1000; 则可以给变量i 赋初值1000。 这句话...
分析一下原因:第一句:int i,*p=&i;很明显,你把i与*之间的逗号(,)写错成分号(;)了。这句话声明了两个变量i和p,其中i是普通整型变量,p则是一个指向整型变量的指针变量。指针变量p的意思就是说p的值是一个地址。若是想要知道p指向的那个变量的值,则需要用*p。本句*p=&i,就是把...

若有下列定义:int **p;则p=&i;是错误的。这句话对吗?
int **p;p=&i;是错误的。int **p表示的是二级指针,表示p所指向的地址里面存放的是一个指向int类型的指针。二级指针存放一级指针的地址,指向一级指针。如int*p ={1,2,3}, int**pp=&p,pp=指针p的首地址,*pp=数组的首地址,**pp=数组第一个值1。指针数组的数组名传递参...

相似回答