常用的基本數(shù)據(jù)類型
通過 typedef 重定義 , 例如: typedef unsigned long ULONG;
ULONG = unsigned long
UCHAR = unsigned char
UINT = unsigned int
VOID = void
PULONG = unsigned long *
PUCHAR = unsigned char *
PUINT = unsigned int *
PVOID = void *
32位下 void 是空類型,char 1字節(jié),int 4字節(jié) long 也是4字節(jié),通常64位 long 是8字節(jié),int 是4字節(jié).
指針的長度跟隨操作系統(tǒng)的位數(shù)
常用的返回值,這個并沒有強制的說必須返回什么.
STATUS_SUCCESS 成功
STATUS_INVALID_PARAMETER 錯誤參數(shù),一般表示發(fā)送到設備的IRP或調(diào)用某個函數(shù)提供了錯誤的參數(shù).最長出現(xiàn)
STATUS_INSUFFICIENT_RESOURCES 資源不足,一般發(fā)生在分配內(nèi)存失敗,系統(tǒng)資源枯竭時.最少出現(xiàn),一般不會出現(xiàn).
STATUS_PENDING 請求尚未完成,不能算做是一個錯誤.常見于異步的文件讀寫操作.
STATUS_BUFFER_OVERFLOW 緩沖區(qū)長度不足,可能需要更長的輸出緩沖.
STATUS_BUFFER_TOO_SMALL 和上面一樣,但是有細微的差別,但沒有必要注意這些細節(jié).
相關文件:
NTSTATUS常量定義頭文件?ntstatus.h
基本類型的類型定義頭文件?ntdef.h