程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> c++-結構體的第一個變量為字符型則無法取出地址?

c++-結構體的第一個變量為字符型則無法取出地址?

編輯:編程解疑
結構體的第一個變量為字符型則無法取出地址?

定義一個結構體,結構體的第一個成員是一個字符變量,然後在主函數裡創建一個這個結構體的對象,取這個對象的在結構體中的第一個字符變量的地址,在winxp系統下顯示出來的是亂碼,在安卓手機上的AIDE下運行也沒有正常顯示出來,而把結構體的第一個變量定義成如int型的其他類型的變量就可以正常顯示出地址,這是為什麼圖片

最佳回答:


http://codepad.org/KN0BlwkH
-2639232
-2639228
-2639220
double int都是4字節,char雖然只有1字節,但是編譯器按照4字節對齊
所以地址連續相差4

為什麼是負的,因為地址最高位是1

caozhy
hjl2015hjl
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved