Hex-Zahlen mit return zurückgeben



  • Hallo,

    ich habe eine Frage.
    Ich möchte in einer Funktion per return eine hex-Zahl zurückliefern (inkl. 0x), wie mache ich das?
    z.B. int zahl(int x){
    ...

    Ich hoffe die Frage ist nicht zu simpel 😞



  • ich versteh nicht wie du dir das vorstellst

    int zahl(int x)

    gibt ja aufjedenfall einen Integer zurück
    den kann man auch als Hexzahl sehen wenn man will
    indirekt sind alle Zahlen binär Zahlen

    was genau hast du denn mit der Hexzahl vor?
    Ich vermute mal du suchst eine Funktion die dir einen Char-Array in der Form zurückgibt



  • wenn du die Zahl in einem Integer (zb. in der Variable zahl) gespeichert hast, kannst du es doch ganz leicht ausgeben.

    printf("0x%x\n",zahl);
    


  • Deine Fragestellung ist nicht präzise genug.
    Ich nehme an, dass du eine Funktion suchst, deren Parameter ein Integer ist und dieser soll dann als Hexadezimalzahl zurückgeliefert werden, oder?



  • @Christoph K.:
    Und Deine Fragestellung ist unsinnig. Ein Integer-Wert ist sowohl eine Hexzahl, als auch eine Binärzahl, als auch eine Dezimalzahl. Alles eine Frage der internen Speicherung und der externen Darstellung 😉



  • frage_1 schrieb:

    Ich möchte in einer Funktion per return eine hex-Zahl zurückliefern (inkl. 0x), wie mache ich das?

    so ungefähr

    char *hexzahl (int x)
    {
       static char hex[256];
       sprintf (hex, "0x%x", x);
       return hex;
    }
    


  • @LordJaxom
    Da habe ich mich anscheinend unglücklich ausgedrückt, ersetzte "zurück geliefert werden" durch , um es in deinen Worten zu sagen, "extern dargestellt werden".


Log in to reply