[英]How can I print unsigned char as ascii
我正在尝试将未签名的char转换为ascii文本。 我该怎么做? 我已经尝试过了,但这是错误的:
typedef struct mtmheader
{
unsigned char objName[20];
unsigned char msgType[2];
}mtmheader;
mtmheader h;
processMTMHeader(datap,&h, endmmsgp );
printf("Name, type: %s %c\n",(char *) &h.objName,(char *) &h.msgType);
编辑我读了无符号字节流,想知道我怎样才能将ascii文本打印出来。 在printf中只有伪代码,这是错误的。
printf("Name, type: %s %c\n", h.objName, h.msgType[0]);
应该打印整个字符串objName
和msgType
的第一个字符。
对于第一个起作用的对象,您必须确保objName
是null终止的。
同样, unsigned char
不是用于字符串的正确类型,请使用不带unsigned
纯char
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.