阿摩線上測驗
登入
首頁
>
程式設計
>
105年 - 105年地方四等-程式設計概要#58807
> 申論題
申論題
試卷:105年 - 105年地方四等-程式設計概要#58807
科目:程式設計
年份:105年
排序:0
申論題資訊
試卷:
105年 - 105年地方四等-程式設計概要#58807
科目:
程式設計
年份:
105年
排序:
0
題組內容
八、下列變數 a、b、c、d、e 在 Visual C++ 程式語言(32 位元的作業系統)裡各占多少 的記憶體?(每小題 2 分,共 8 分)
申論題內容
⑶ double *c = 0x10000;
詳解 (共 3 筆)
詳解
提供者:牛奶鍋
編譯器給指標分配的空間大小是和CPU的定址長度相關的,比如32位的CPU,它的定址長度為32位,那麼這個空間也就佔四個位元組,其實不管你定義什麼樣的指標型別,這個空間只是用來存地址,只佔四個位元組,而真正該空間所存的地址是哪一段記憶體的首地址才和所定義的指標型別相關。
詳解
提供者:永不放棄
4bytes
詳解
提供者:hchungw
在32位元作業系統中,指標變數的大小是固定的,不依賴於它所指向的資料類型。無論是指向 int、double 或其他任何類型,指標的大小總是32位元,即4個位元組。
因此,double *c = 0x10000; 這行代碼中,c 作為一個指向 double 的指標,在32位元作業系統中佔用4個位元組的記憶體。這裡的 0x10000 只是給出了一個位址值,而指標變數 c 本身的大小是固定的。