Bitwise.cpp aus Thinking in C++, Ch.3
-
Guten Tag,
ich habe probiert das oben angegebene Beispiel zum laufen zu bringen.
Compilieren hat auch einwandfrei geklappt, nur leider gibt es keine Ausgabe.
Hier der Code (leicht modifiziert, aber nur damit das Fenster offen bleibt):#include "printBinary.h" #include <iostream> using namespace std; // A macro to save typing: #define PR(STR, EXPR) \ cout << STR; printBinary(EXPR); cout << endl; int main() { unsigned int getval; unsigned char a, b; cout << "Enter a number between 0 and 255: "; cin >> getval; a = getval; PR("a in binary: ", a); cout << "Enter a number between 0 and 255: "; cin >> getval; b = getval; PR("b in binary: ", b); PR("a | b = ", a | b); PR("a & b = ", a & b); PR("a ^ b = ", a ^ b); PR("~a = ", ~a); PR("~b = ", ~b); // An interesting bit pattern: unsigned char c = 0x5A; PR("c in binary: ", c); a |= c; PR("a |= c; a = ", a); b &= c; PR("b &= c; b = ", b); b ^= a; PR("b ^= a; b = ", b); system("Pause"); return 0; } ///:~
-
Was meinst du mit "keine Ausgabe"? Schaut dich nur ein schwarzes Fenster an oder wie?
(PS: Makros sind böse. Ersetz das PR(...) lieber durch eine inline-Funktion, damit kommst du wesentlich sicherer weg.)
-
Das mit dem Makro war vorgegeben, hab ich mir nicht ausgedacht.
Anyway, da steht halt nur das was immer von system("Pause") angezeigt wird, nichts weiter. Komisch irgendwie...