atxxfs 发表于 2018-8-17 23:29:55

C语言二维数组地址问题

我定义了一个二维数组a
显然a和a代表第1行和第2行的首地址
但为什么&a和&a的值还是不变呢?对一个地址进行取址,得到的地址不变?(没有涉及指针变量)

claws0n 发表于 2018-8-17 23:39:55

int a = { {1, 2, 3} , {4, 5, 6} };
a = 1
a = 2

代码可付一下吗?

人造人 发表于 2018-8-17 23:46:32

claws0n 发表于 2018-8-17 23:39
int a = { {1, 2, 3} , {4, 5, 6} };
a = 1
a = 2


claws0n 发表于 2018-8-18 00:20:24

人造人 发表于 2018-8-17 23:46


{:10_257:}
前辈哥哥~~

没有代码与编译,还是不行~{:10_250:}

人造人 发表于 2018-8-18 00:35:32

claws0n 发表于 2018-8-18 00:20
前辈哥哥~~

没有代码与编译,还是不行~

不明白你在说什么

claws0n 发表于 2018-8-18 00:38:27

人造人 发表于 2018-8-18 00:35
不明白你在说什么

没有写代码测试,还是会犯错~~

人造人 发表于 2018-8-18 00:39:30

claws0n 发表于 2018-8-18 00:38
没有写代码测试,还是会犯错~~


zqianglh 发表于 2018-8-18 04:01:05

取的是数组的地址和数组内的变量没关。

单行道007 发表于 2018-8-18 09:24:39

你说的a就相当于一个一维数组的名字

zhouqq 发表于 2018-8-18 11:49:18

人造人 发表于 2018-8-17 23:46


这个输出没毛病。

printf 里的 a 是 地址,也就是 数据 a的地址,这个地址是18283784,

同理, a也是地址,即数据 a的地址,看样子大哥你的计算机int 是四字节,

所以 a 的地址是 18283784 + 4字节*3 = 18283796

综上输出是真确的。

人造人 发表于 2018-8-18 11:51:56

zhouqq 发表于 2018-8-18 11:49
这个输出没毛病。

printf 里的 a 是 地址,也就是 数据 a的地址,这个地址是18283784,


页: [1]
查看完整版本: C语言二维数组地址问题