pixel_data
是一个char
类型的vector
。
当我执行printf(" 0x%1x ", pixel_data[0] )
时,我希望看到的结果是0xf5
。
但是我得到的结果是0xfffffff5
,好像我正在输出4字节整数而不是1字节。
为什么会这样?我已经给printf
传递了一个char
类型的变量进行打印 - 它只有1字节,那么为什么printf
会打印出4个字节的结果?
NB. 这个printf
实现被封装在第三方API中,但是我想知道这是否是标准printf
的特性?