十六進製制除錯顯示資料

2021-10-25 03:10:24 字數 1038 閱讀 2169

在嵌入式開發中,不管是驅動除錯還是應用協議開發,經常需要十六進製制列印資料,供除錯使用。以下是c實現的乙個十六進製制輸出的函式,感覺挺實用的,供參考

#define bin2char(ch) (((ch) > ' ' && (ch) <= '~') ? (ch) : '.')

void dumphex(unsigned char *buf, int len)

; unsigned char *ptr = (unsigned char *) buf;

char *ibuf = membuf;

int i, j;

int len1, len2;

len1 = len / 16 * 16;

len2 = len % 16;

ibuf[0] = 0;

for (i = 0; i < len1; i += 16)

sprintf(ibuf, " ");

ibuf += 2;

for (j = 0; j < 16; j++)

sprintf(ibuf, "\r\n");

printf("%s", membuf);

ptr += 16;

}if (len2 == 0)

ibuf = membuf;

sprintf(ibuf, "0x%08x ", (int) buf + ((len >> 4) << 4));

ibuf += 12;

for (i = 0; i < len2; i++)

for (i = len2; i < 16; i++)

sprintf(ibuf, " ");

ibuf += 2;

for (i = 0; i < len2; i++)

sprintf(ibuf, "\r\n");

printf("%s", membuf);

}

顯示效果如下;

顯示十六進製制字元陣列

1.將一串十六進製制數值,儲存到字元陣列中,然後以16進製制顯示。unsigned char buf 5 x8b x22 x11 x12 結尾 0 cstring str for int i 0 i 4 i afxmessagebox str 輸出的結果為 8b 22 11 12 2.如果第一句,改...

Excel輸入十六進製制數,以及十六進製制運算

網上覆制來複製去的連個靠譜答案都沒有.f k 所以無奈自己探索出來了 單元格 a1文字值 a2進製值 輸入內容 fefe oct2hex hex2oct a29 由於單元格沒有提供進製格式,所以填入的值實際上是文字值,但是轉換函式卻可以把文字值視為進製值拿去轉換 所以我們兩次轉換就能得到真正的進製數...

QByteArray轉換為十六進製制顯示

串列埠接受到的資料讀取出來是qbytearray,將它以十六進製制顯示在lineedit中。共有三種形式 形式一 顯示十六進製制的格式 收到字元 123 顯示為0x31,0x32,0x33 形式二 只顯示十六進製制的數字 收到字元 123 顯示為313233 形式三 顯示字元 收到字元 123 顯示...