簡體   English   中英

如何將未簽名的字符作為ASCII打印

[英]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]);

應該打印整個字符串objNamemsgType的第一個字符。

對於第一個起作用的對象,您必須確保objName是null終止的。

同樣, unsigned char不是用於字符串的正確類型,請使用不帶unsignedchar

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM