您是否希望在代码中看到类似t_byte*
(带有typedef unsigned char t_byte
)或unsigned char*
的内容?
我倾向于自己的库中的t_byte
,但从未在采用这种方法的大型项目中工作过,并且想知道存在的陷阱。
最佳答案
如果您使用的是C99或更高版本,则应为此使用stdint.h
。 uint8_t
,在这种情况下。
C++直到C++ 11才获得此 header ,将其称为cstdint
。旧版本的Visual C++不允许您在C++代码中使用C99的stdint.h
,但是几乎所有其他C++ 98编译器都可以使用,因此即使使用旧的编译器,您也可以使用该选项。
与许多其他事情一样,Boost讨论了 boost/integer.hpp
的这种差异,如果编译器的标准C++库没有提供uint8_t
,则提供类似ojit_code的东西。