C语言中的任何数据都是占用空间的。、
就算你定义一个没有使用的变量,在没有打开优化时,也是会占用一个空间的。
如Keil的使用中,你编译完成后,会显示你的程序存储的使用情况。
如下图所示:
你可以添加上你的内存地址,再编译一下,看一下空间占用是不是变大了。
嗨,如果是用Pointer指向這個位址0x0028FF1C,
那這個Pointer變數是會佔用空間的,
在32位元CPU定址下,
Pointer一定占用4個Byte(32位),
因為本身Memory的地址總是從0x00000000開始遞增(32位),
為了方便存取特定位址我們一定宣告Pointer或者用&運算取出變數的Pointer進行存取
以上希望對您有用
字母本身不占用空间。但是你把这些字母赋值给一个变量或者指针变量,占用空间的是这个变量。
好比你家地址本身不占空间,但对应的你家房子占很大空间。。。。。
转化成二进制
0000 0000 0010 1000 1111 1111 0001 1100
占32位,8个字节