关于获得指针尺寸的一些问题
本帖最后由 小学生程序员 于 2022-5-3 16:42 编辑今天温故完《带你学C带你飞》s1e21指针之后有一些问题,望解答!谢谢!
过程:在小甲鱼视频中11分29秒使用sizeof语句求得pa,pb的尺寸以后我也试了一下,结果是8(这不是重点,且注意,小甲鱼没有带*),我又把pa,pb改成了*pa,*pb,也就是:
printf("sizeof pa = %d\n", sizeof(pa))改成了printf("sizeof pa = %d\n", sizeof(*pa))结果成了4,我很不解,所以请各位给我这个10岁的小学生解决一下!真的很谢谢!
(问题中有的词语可能不严谨,请谅解!{:10_282:} )
哦,对了,你说这是不是Visual Studio Code的特性{:10_282:} *pa赋的是int型数据吧。pa是指针,*pa是指针指向的数据
同一编译环境里指针尺寸大小都是固定的,不管是指向int还是char
把指针理解为一个8升的罐子,里面可以放4升的水(int),也可以放1升的水(char)
sizeof求大小,看清楚问的是谁的大小。pa是罐子本身,*pa是罐子里的东西 对于 64 位的应用程序,每个指针都是 64 位的,就是说,每一个指针都是由 8 个字节构成,一个指向 int 型的指针 pa 当然也是 8 个字节,但是,* pa 代表的是 int ,int 是 32 位的,占用的是 4 个字节空间。 jackz007 发表于 2022-5-3 16:02
对于 64 位的应用程序,每个指针都是 64 位的,就是说,每一个指针都是由 8 个字节构成,一个指向...
懂了,谢谢 风车呼呼呼 发表于 2022-5-3 15:59
*pa赋的是int型数据吧。pa是指针,*pa是指针指向的数据
同一编译环境里指针尺寸大小都是固定的,不管是指 ...
谢谢,懂了!
页:
[1]