您好,登錄后才能下訂單哦!
程序員的大部分時間都在忙于代碼的實現,不管是c語言 還是c++ java...都涉及到了數據類型。
但是什么是數據類型呢?失眠的晚上,我思考很久。讓大家見笑。
今天就以c語言的數據類型為例,簡單聊一下數據類型這個名詞吧。
聊到數據類型,就首先聊一下內存。不管寫的代碼是在unix linux 還是windows上運行,都需要涉及到內存的使用。但是程序中看到的這些只是內存的地址編號,我們將其稱為虛擬地址。
而實際的物理內存地址,作為應用程序員是根本看不到的。 在32bit機上,cpu可以訪問的虛擬地址編號可以從0~4G-1.每個地址編號可以對應一個字節物理地址空間,也可以不對應具體的物理地址空間。
int var_i=10;
char var_c='m';
每個變量和常量都有自己的地址空間。怎樣才能訪問這些地址空間里的內容呢?
首先根據變量或常量的名字找到對應的地址空間,然后訪問空間里的內容。
這句話沒有問題,那從地址空間里取一個字節呢?兩個字節呢?還是n個字節呢?
根據什么決定呢? 那就是數據類型。如果是char類型的,那就取一個字節的內容。如果是int,那就取四個字節的內容,如果是short,那就取2個字節的內容。如果是float,那就取四個字節的內容。
int? ?float都是四個字節,那又如何區分呢?
取出來數據以后,還有字節數據的組織方式,根據不同的類型來組織數據。
這就是數據類型。
總之,數據類型就是訪問內存的規則而已。
想起來魯迅先生說過的。“其實地上本沒有路,走的人多了,也便成了路”
其實計算機的世界里本沒有數據類型,規則使用多了,便有了數據類型。
歡迎大家交流溝通。愚見
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。