1 Pluspunkt 0 Minuspunkte
Wie kann ich in C++ mit std::cin eine hexadezimale Zahl von Stdin lesen?
von  

1 Antwort

0 Pluspunkte 0 Minuspunkte

Du kannst die Eingabe in einen iStringStream speichern und mit std::hex ausgeben.

#include <iostream>
#include <string>
#include <sstream>

int main() {
    std::string input;
    std::cout << "Gib eine Hexadezimalzahl mit Buchstaben ein: ";
    std::cin >> input;

    // Hier könntest du die Eingabe analysieren und entsprechend verarbeiten
    std::istringstream iss(input);
    int number;
    iss >> std::hex >> number;

    if (!iss.fail()) {
        std::cout << "Eingegebene Hexadezimalzahl: 0x" << std::hex << number << std::endl;
    } else {
        std::cout << "Ungültige Eingabe." << std::endl;
    }

    return 0;
}
von (732 Punkte)