将unsigned char打印为字符(格式说明符?)

时间:2015-01-16 12:48:18

标签: c

我有unsigned char变量,它存储某些符号的ASCII码(例如,'1')。 我想打印符号。我使用正确的格式说明符吗?这个定义得很好吗?或者我应该将它转换为sprintf内的int?

unsigned char unsignedCharVar = 49;
sprintf(dest,"%c", unsignedCharVar); // should print '1'

2 个答案:

答案 0 :(得分:1)

u指定所有类型的无符号,请尝试%uc

答案 1 :(得分:0)

您不需要转换为char,因为(非扩展)ASCII的代码为0-127,这意味着unsigned和signed char中的表示形式相同。您只需确保unsigned char包含有效值。