我的问题是:如何打印“pmessage”、“ailength”、“szdatasize”?
EventInfo* pEventInfo
typedef struct {
char* pMessage;
SocketHeader* pSocketHeader;
PipeHeader* pPipeHeader;
} EventInfo;
typedef struct {
apr_uint32_t aiLength;
} PipeHeader;
typedef struct {
apr_uint32_t szDataSize;
} SocketHeader;
什么是“四月二十二日”?
最佳答案
虽然我认为@pilcrow的答案(在<inttypes.h>
中使用c99格式字符串转换说明符)可能是最优雅的,但是unsigned long
类型保证至少是32位,因此您可以简单地将%lu
说明符与转换一起使用:
printf("%lu\n", (unsigned long) value);
不需要C99。这在今天算不上什么问题,但是iirc,apr也不假设c99编译器,否则他们就不会费心滚动自己的“精确”类型。
关于c - 如何打印“apr_uint32_t”?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16953900/