簡單問題在這裏。 XOR運算符(^)有問題。我可以XOR整數很好,並得到正確的結果;然而,當XORing兩個字符時,什麼也不會返回:XOR運算符C++
int main() {
char a = 'a';
char b = 'b';
char c;
c = a^b;
cout << c << endl;
}
沒有任何反應。沒有輸出。我在這裏做錯了什麼。我試圖用XOR加密給定鍵的字符串,但是這個操作有問題。我想我可以得到ASCII值並將其轉換爲相應的字符,但此工具將用於加密文件以及純文本,所以我想不惜一切代價避免這種情況。
你會得到輸出,你只是看不到它。 –
@MooingDuck爲什麼不呢? – 0x499602D2
該操作的結果是'1',低於32的ASCII值是「不可打印的」。一個表示數據的結束,一個是新行,一個是回車,一個是嘟嘟聲......見http://www.asciitable.com/(我懶得做出好答案,別人做它) –