我有unsigned char变量,它存储某些符号的ASCII码(例如,'1')。
我想打印符号。我使用正确的格式说明符吗?这个定义得很好吗?或者我应该将它转换为sprintf
内的int?
unsigned char unsignedCharVar = 49;
sprintf(dest,"%c", unsignedCharVar); // should print '1'
答案 0 :(得分:1)
u
指定所有类型的无符号,请尝试%uc
。
答案 1 :(得分:0)
您不需要转换为char,因为(非扩展)ASCII的代码为0-127,这意味着unsigned和signed char中的表示形式相同。您只需确保unsigned char包含有效值。