1.u8就是unsigned char ,是8位無符號char類型的值
/*!< Signed integer types */
typedef signed char int8_t;
typedef signed short int16_t;
typedef signed long int32_t;
/*!< Unsigned integer types */
typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
typedef unsigned long uint32_t;
/*!< STM8Lx Standard Peripheral Library old types (maintained for legacy purpose) */
typedef int32_t s32;
typedef int16_t s16;
typedef int8_t s8;
typedef uint32_t u32;
typedef uint16_t u16;
typedef uint8_t u8;
2.Size_t
(1)size_t
size_t是C++標準在stddef.h中定義的颁井。這個類型足以用來表示對象的大小。size_t的真實類型與操作系統(tǒng)有關蠢护。size_t在32位架構上是4字節(jié)雅宾,在64位架構上是8字節(jié),在不同架構上進行編譯時需要注意這個問題葵硕。而int在不同架構下都是4字節(jié)秀又,與size_t不同;且int為帶符號數(shù)贬芥,size_t為無符號數(shù)吐辙。
(2)ssize_t
ssize_t是有符號整型,在32位機器上等同與int蘸劈,在64位機器上等同與long int
3)size_t和ssize_t作用
size_t一般用來表示一種計數(shù)昏苏,比如有多少東西被拷貝等。例如:sizeof操作符的結果類型是size_t威沫,該類型保證能容納實現(xiàn)所建立的最大對象的字節(jié)大小贤惯。 它的意義大致是“適于計量內(nèi)存中可容納的數(shù)據(jù)項目個數(shù)的無符號整數(shù)類型”。所以棒掠,它在數(shù)組下標和內(nèi)存管理函數(shù)之類的地方廣泛使用孵构。
而ssize_t這個數(shù)據(jù)類型用來表示可以被執(zhí)行讀寫操作的數(shù)據(jù)塊的大小.它和size_t類似,但必需是signed.意即:它表示的是signed size_t類型的。
3.例子:
運行結果: