为您找到"

c语言中*p=&a和p=&a有什么区别

"相关结果约100,000,000个

有以下定义:int a[10],*p=a; 则 *(p+5)表示 A. 元素a[5]的地址 B...

那么,当我们要访问数组a中某个元素的地址时,可以使用指针p加上偏移量。例如,表达式*(p+5)实际上是在说从指针p指向的位置开始,向后移动5个单位,得到的是数组a中第六个元素的值的地址。让我们仔细分析一下选项。A选项说*(p+5)表示元素a[5]的地址,这是正确的。因为在C语言中,数组索引是从...

C语言中两个*是什么意思?比如int**p

这时,*p代表这个指针数组的首元素,也就是一个一维指针;**p代表这个一维指针指向的数据。 班加西2011 | 发布于2013-04-13 举报| 评论 6 5 指向指针的指针。 追问 那意思就是,有一个数组a[i]={1,2,3,4,5,···} 指针**p,p=a[0】,这个**p就是指向a[0]和a[1]的值,结果**p=a[1]吗?这...

...3, 4, 5, 6, 7, 8, 9, 10}, *p = &a[3], b; b = p[5]

include <stdio.h>int main(){int a[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }, *p = &a[3], b; b = p[5];printf("%d\n", b);} 因为*p=&a[3]; 表明将a[3]的地址赋值给p,此时p[0]=a[3],因此p[5]=p[0+5]=a[3+5]=a[8]。

若有定义:“int*P,x=0,*P,P=&x;”,则语句“printf(”%d\n”,*p...

【答案】:B B。【解析】*P的意思是取其指向地址的内容,P是指向x地址的指针,因此输出*P也就是输出X的内容,即0,故选择B选项。

c语言float* p=& x;正确吗

正确答案选择D,“float *p=&x;”,因为x是一个float型的变量,所以说要定义一个float型的指针变量来存储x变量的地址,所以说选项D直接排除。然后C选项也可以排除,因为C选项定义的是变量,不是指针变量。A和D选项都是指针变量,但是A选项不能作为正确的语句,不能把一个常数赋值给指针变量,所以说A...

...main() { int a=3,b=0; int *p=&a,*q=&b; a=*q;*p=b; printf("%d...

p指向a,q指向b,后续并没有对p和q更改值的操作(只有对*p赋值)所以定义后面的两句等同于 a=b a=b 两次一样的操作 最终a为0,b不变也是0

C语言:假如int *p,k;那么 *p=k与p=&k 有什么区别么?

1、int *p,k;p=k;//这样写,错! 这句话之前必须有前提,可以这样 int *p,k,y;p=&y;p=k;//此时表示将变量k的值赋值给指针变量p所指向的空间,相当于y=k;2、int *p,k;p=&k;//相当于把变量k的地址赋值给指针变量p

c语言中*p++=*s++;是什么意思?

s++ 指针*s和一元运算符++ 指针s会执行++,向右移一个单位,也就是s的下一个元素(例:若s为char型指针,就向右移8位,若为float型就移32位)但是*s++的一元运算符++在*s右边,因此*s++这个表达式的值就为*s 可以这么解释 p++=*s++这个表达式的功能就是将*s的值赋值给*p,然后各自指向...

怎么理解C语言中 a=p==&m;的意思

a=p1==&m;意思就是 如果指针p1 是指向m所在的内存,那么a = 1;否则 a = 0 就是先判断俩指针是不是相等,然后赋值给a

C语言 inta[4]={0,1,2,3},*p;p=&a[2];则*--p的值是?怎样计算?

p为指针 p=&a[2]//p指向a[2]即2 --p,//p向前移动一位指向a[1]--p//取当前指向的内存空间内的数值,就a[1]的值1 等处的结果是1
1 2 3 4 5 6 7 8 9

相关搜索