我們常需指定精確變數型別寬度, 可惜在C裡面是沒有define的, 所以每套lib都自己define一次, 比如
guint32(gtk),
Uint32(SDL)
u32(linux kernel)
其實C99已經有定義這部分
http://www.opengroup.org/onlinepubs/009695399/basedefs/stdint.h.html
程式只要
#include就可用
int8_t a;
uint32_t b;
等方式來指定變數寬度, 同樣地C99也規範的boolean 變數的宣告方式, #include
目前主流compiler GNU C/C++, MS Visual C/C++ 幾乎都支援C99, 嗯! 8051 的 Keil C除外
1 則留言:
我有為 8051 的 Keil C 新增一個 stdint.h ,從 GNU 那修改來的,當作過渡時期使用吧,需要的人可以找我拿 :)
張貼留言