sizeof()统计数组长度
为什么在int main()中sizeof算的是40
在int main()里算的是8 我记得传入函数的是指针,这时sizeof算的是指针的长度 本帖最后由 routty 于 2021-9-12 10:33 编辑
=都没显示? 函数调用数组的时候,并不是在函数中复制整个数组,调用的是指向数组的首地址,所以说的和楼上一样,指针变量长度8 routty 发表于 2021-9-12 10:02
=都没显示?
我改了好多遍代码,一直是8和40,截图是改的过程中任意截得,但总体没什么影响 routty 发表于 2021-9-12 10:06
函数调用数组的时候,并不是在函数中复制整个数组,调用的是指向数组的首地址,所以说的和楼上一样,指针变 ...
原来这样谢谢你,还是有一点点疑惑是为什么指针长度变成了8呢?int *不是 4吗?
大马强 发表于 2021-9-12 09:02
我记得传入函数的是指针,这时sizeof算的是指针的长度
原来这样谢谢你,还是有一点点疑惑是为什么指针长度变成了8呢?int *不是 4吗? 32位编译器,输出结果为4.
64位编译器,输出结果为8 https://static01.imgkr.com/temp/7fea1b198a364a7c9a9ce198e699cba0.jpg 大马强 发表于 2021-9-12 11:24
好的谢谢你
页:
[1]