size t 百度百科

2021-09-09 04:38:26 字數 1274 閱讀 3146

size_t 型別定義在cstddef標頭檔案中,該檔案是c標準庫的標頭檔案stddef.h的c++版。它是乙個與機器相關的unsigned型別,其大小足以保證儲存記憶體中物件的大小。

例如:bitset的size操作返回bitset物件中二進位制位中的個數,返回值型別是size_t。

例如:在用下標訪問元素時,vector使用vector::size_type作為下標型別,而陣列下標的正確型別則是size_t。

size_t是標準c庫中定義的,應為unsigned int,在64位系統中為 long unsigned int。

資料型別"socklen_t"和int應該具有相同的長度,否則就會破壞 bsd套接字層的填充。posix開始的時候用的是size_t, linus torvalds(他希望有更多的人,但顯然不是很多) 努力向他們解釋使用size_t是完全錯誤的,因為在64位結構中 size_t和int的長度是不一樣的,而這個引數的長度必須和int一致,因為這是bsd套接字介面標準。最終posix的那幫傢伙找到了解決的辦法,那就是創造了乙個新的型別"socklen_t"。linus torvalds說這是由於他們發現了自己的錯誤但又不好意思向大家夥兒承認,所以另外創造了乙個新的資料型別 。

在c++中,設計 size_t 就是為了適應多個平台的 。size_t的引入增強了程式在不同平台上的可移植性。size_t是針對系統定製的一種資料型別,一般是整型,因為c/c++標準只定義一最低的位數,而不是必需的固定位數。而且在記憶體裡,對數的高位對齊儲存還是低位對齊儲存各系統都不一樣。為了提高**的可移植性,就有必要定義這樣的資料型別。一般這種型別都會定義到它具體佔幾位記憶體等。當然,有些是編譯器或系統已經給定義好的。經測試發現,在32位系統中size_t是4位元組的,而在64位系統中,size_t是8位元組的,這樣利用該型別可以增強程式的可移植性。

乙個基本的無符號整數的c / c + +型別, 它是sizeof操作符返回的結果型別, 該型別的大小是選擇。因此,它可以儲存在理論上是可能的任何型別的陣列的最大大小。 換句話說,乙個指標可以被安全地放進為size_t型別(乙個例外是類的函式指標,但是這是乙個特殊的情況下)。 size_t型別通常用於迴圈、陣列索引、大小的儲存和位址運算。 雖然size_t可以儲存乙個指標,它的目的是更好地使用另乙個unsinged整數型別uintptr_t形式。 在某些情況下,使用size_t型別是更為有效,比習慣性使用無符號型別的程式設計師更安全。

size_t是在基於無符號整數memsize型別的c / c + +的標準庫中定義的。 c語言中,此型別位於標頭檔案stddef.h中,而在c++中,則位於cstddef中。

AnimateWindow 百度百科

animatewindow 開放分類 程式設計 計算機 api 函式功能 該函式能在顯示與隱藏視窗時能產生特殊的效果。有兩種型別的動畫效果 滾動動畫和滑動動畫。函式原型 bool animatewindow hwnd hwnd,dword dwtime,dword dwflags 引數 hwnd 指...

WCF百度百科

根據微軟官方的解釋,wcf 之前的版本名為 indigo 是使用託管 建立和執行面向服務 service oriented 應用程式的統一框架。它使得開發者能夠建立乙個跨平台的安全 可信賴 事務性的解決方案,且能與已有系統相容協作。wcf是微軟分布式應用程式開發的集大成者,它整合了.net平台下所有...

Mashup 百度百科

mashup是糅合,是當今網路上新出現的一種網路現象,將兩種以上使用公共或者私有資料庫的web應用,加在一起,形成乙個整合應用。一般使用源應用的api介面,或者是一些rss輸出 含atom 作為內容源,合併的web應用用什麼技術,則沒有什麼限制。mashup在geek群體和網際網路玩家之中獲得了極大...