C语言我想问的是p-a是什么意思

2020-12-05 14:16:49 字数 3282 阅读 2459

1楼:搁浅的珊瑚海

程序定义了一个3行4列的二维数组a,p是指向数组首地址的指针,里面方数组首地址,a[0]是第0行的地址,二维数组不是可以看作元素都是一维数组的一位数组么,所以a[0]也是数组元素a[0][0]的地址,p-a[0] 就是看p所指向的数组元素的地址跟a[0][0] 的位移,12的地址正好是p+11,for循环就是把这个数组 按3*4矩阵输出,每输出3个就换行

p=&a[0][0]是什么意思??

2楼:马拉古城

这是指针中的内容,p是一个指针,用来存储地址,p=&a[0][0];的意思就是将a [0][0]的地址的值给p,也就是说p指向a[0][0]。

3楼:匿名用户

p是int型指针。p=&a[0][0]意思为将a[0][0]的地址赋值给p。

c语言中p->a是啥子意思

4楼:匿名用户

p 是一个结构体或者共用体类型数据的指针。

p->a表示访问该指针上,名为a的数据成员。

等效于(*p).a

5楼:匿名用户

p是一个结构体类型的指针变量,这个结构体中有一个属性a,这个语句就是取他指向的对象的属性元素a

p->a是什么意思啊??我是c语言菜鸟

6楼:特维佐

比如在一个结构体中,

struct a

;int main()

如上->这个符号就是取成员运算符,结构体中的成员.

其他取成员的方法还有 xx.a或者(*p).a。

7楼:蓝天下的

在p已经指向包含a的结构体的前提下,意思是指针p指向结构体a成员

c语言a[0]++是什么意思

8楼:小夏在深圳

a[0]++也就是数组中第一个值+1再存放到原位。

比如:int a[2];

其中a[0]=1; a[1]=5;

a[0]++以后,a[0]的值变为2。

&a[0]++是错误语句,编译都不会过。因为++是后++,在执行该语句时是不计算的。a[0]++是个表达式而不是值,显然用&取一个表达式的地址是非法操作。

&a[0]+1是正确语句,因为&的优先级比+高,所以是先取a[0]的地址再给这个地址+一个元素所占字节数——就是说&a[0]+1是a[1]的地址。

扩展资料源**如下:

#include "stdio.h"

main()

9楼:银月恶魔_仙剑

可以自己试着编个程序,运行一下,如:

#include

void main()

;printf("%d\n",a[0]++);

return 0;

}程序运行到a[0]++的时候,a[0]=3;

等到所有语句执行完后,a[0]=4。

10楼:匿名用户

#include

int main()

;printf("%d\n",a[0]++);

return 0;

}结果是3 虽然我感觉是4.。。。不过很可惜

11楼:匿名用户

变成a[1]=3

一个变量 后加上++ 比如a++ 就是自己加1

12楼:匿名用户

a[0]++是这次命令后值加1,应该是a[0]=4

13楼:磊无敌

我同意楼上说的,其实你把**运行一下不就知道了

关于一道c语言的问题,那个p-a是什么意思,就是减法吗

14楼:物理公司的

p指向a的第一个位置a[0],而a默认的也是a[0],p每次加1就是a1,a2递增,p-a计算的是此时p所指向a的位置和a0的距离

15楼:手机用户

你这照的不全啊,连p的定义类型都没照下来,是回答不了了

16楼:书香末央

p-a是数组成员的地址编移

c语言中*p=a[0]与p=a[0]有什么区别?

17楼:匿名用户

对于指针来说,

*p = a[0],表示向地址为p的内存区域赋值为a[0]。

p = a[0],把变量p的值改为a[0],这个语句正常应用中是错误的。变量p的值为内存地址,这样赋值会丢掉p原来指向的内存。

正确给内存地址赋值应该使用第一句。

18楼:匿名用户

这个是指针和变量的区别:

第一个表示变量p存的是数组a的地址值,即表示指向数组a

第二个表示p和数组a的第一个元素的值一样。

19楼:

有啊,*p是个指针,他储存的是一个变量的地址。你把a[0]里的数据赋给他,是储存在那个变量中,不是在存*p中。另一个p是个变量,a[0]中的数据时存在p中

例如:int *p;

p=&b;

*p=a[0];

b==a[0] 值是放在b中

另一个是放在p中 ,不同的

20楼:

都是赋值语句,p的数据类型不同,被赋值的对像不同而已

*p=a[0] ==>赋值对像不是变量p本身,而是它所指向的对像

p=a[0] ==>赋值的对像就是变量p本身

c语言中(p-2)[0]是什么意思

21楼:

显然p是数组指针。笼统不好说,给你举个例子:若有int a=,*p=a+7;,那么(p-2)[0]的值就是6——因为p=a+7使p指向了8,再向前挪2位就是6。

c语言中double p=a[0]是什么意思? double p=a[n]呢?

22楼:八月烟火暖

第一个问题

创建一个 double 类型的变量p, 并将数字 a 的第 1 个 元素 复制给 p;

第二个问题

创建一个 double 类型的变量p, 并将数字 a 的第 n+1 个 元素 复制给 p;

23楼:匿名用户

把数组 a 的第 n + 1 个元素的值赋给 p 这个新变量

c语言c中间加数字是什么意思,C语言%c中间加数字是什么意思

1楼 灰灰不吃羊 限制输出宽度, 2c,就是输出的宽度为2, c省略了1,c的输出格式控制会有详细的介绍。 c语言里 f中间加数字是什么意思 2楼 匿名用户 f是用于格式化输入输出函数,对应类型为float的格式字符。加数字的情况仅适用于输出函数,比如printf。 其形式为 printf a bf...

装C是什么意思,C语言/*……*/是什么意思

1楼 神丶雨祭丨 装c 装。b 只不过好听一点不想爆粗口 希望采纳,你的支持是我们的动力! 2楼 安安静静活几年 就是比装逼 b 更厉害的当时是装c了 c语言 是什么意思 3楼 安徽电信网上营业厅 是c语言注释的起始标识。 在c语言中,可以使用 作为注释文字的起始和结束标识,在 和 中间的文字,将不...

C语言出栈是什么意思,C语言中的出栈是什么意思??

1楼 匿名用户 出栈是删除栈顶的元素,输出栈的值就是仅仅把它显示在屏幕上,并不删除它的值, 2楼 匿名用户 栈 是c中一个容器,先进先出, 出栈就是把数据取出来。输出栈的值就是把出栈的数据打印出来。看一下书就明白的。 3楼 匿名用户 出栈是说删除最顶上的元素。 c语言中的出栈是什么意思?? 4楼 匿...