2008-11-09 62 views
-2

如果我有一個十六進制值,如0x53,(S)的字符,我該如何顯示它爲「S」?輸出ASCII值C++

代碼:

char test = 0x53; 
cout << test << endl; 

謝謝!

+0

你有一個實際的問題嗎?已經工作的 – 2008-11-09 03:56:49

+0

。 – tgamblin 2008-11-09 03:57:28

+0

我不明白......有問題嗎? – 2008-11-09 04:00:04

回答

5

有沒有這樣的事情作爲一個變量,存儲十六進制值,或十進制或八進制值。十六進制,八進制和十進制只是向編譯器表示數字的不同方式。編譯後的代碼將以二進制表示所有內容。

這些語句都具有確切相同的效果(假設字符集ASCII):

test = 0x53; // hex 
test = 'S'; // literal constant 
test = 83; // decimal 
test = 0123; // octal 

所以打印的字符,你會與任何字符以同樣的方式,無論你如何給它賦值。

1

只需使用下面,你已經回答了你的問題:

using namespace std; 

int main() { 
    char test = 0x53; 
    std::cout << test << std::endl; 
    return 0; 
}