[英]c++ how to convert a character to hex
我知道在輸出十六進制時我可以使用
cout<<hex<<(unsigned int)(unsigned char)ch<<endl
但我通過使用從標准輸入中獲取一個字符
cin.read((char*)&ch , sizeof(unsigned char))
這次如何將ch
更改為hex
?
cin.read((char*)&ch , sizeof(unsigned char));
cout << hex << (unsigned int)(ch) << endl;
應該管用。
例如,如果您嘗試將單個字符轉換為十六進制以使用 if 進行數學運算,則可以使用以下語句將 ascii 字符表示轉換為其實際數字:
char x = 'A';
int y = x;
if(y > 47 && y < 58) //this covers 0-9
y = y - 48;
else if (y > 64 && y < 71) // this covers A-F
y = y - 55;
並使用 y 作為您的新號碼。 如果您需要多於一位數,您可以將它放在一個循環中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.