tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
4
ZUGRIFFE
403
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Many0815 Many0815 ist offline Mitglied Bronze
    Registriert seit
    Oct 2009
    Beiträge
    35
    Hi Leute.

    Hab ein kleines Problem.
    Und zwar hab ich eine Funktion die mir die MAC-Adresse von meinem System ausliest.
    Das funktioniert auch super, nun will ich die MAC-Adresse via UDP-Socket an eine Application schicken.

    Trage ich jetzt die Hex-Zahlen 1 zu 1 in ein char-array ein so steht zum Beispiel bei den Hex-Zahlen 00:00 nichts im Array. Oder zumindest erkennt die Application nicht dass da was drin steht.

    Nun will ich die Hex-Zahl 00 in 2 char Zeichen '0''0' schreiben.
    Hab aber leider keine Ahnung wie ich das angehen soll und auch nichts im i-net gefunden.

    Hoffe mir kann wer helfen.
    Oder vielleicht hat wer ne geschicktere Idee wie man sowas angeht!

    Cheers Many
     

  2. #2
    Avatar von Bratkartoffel
    Bratkartoffel Bratkartoffel ist offline gebratene Kartoffel
    tutorials.de Premium-User
    Registriert seit
    Jun 2007
    Ort
    Passau (Niederbayern)
    Beiträge
    1.394
    Hi,

    alle Zeichen sind in der sogenannten ASCII-Tabelle drin. Addiere zu deinem 0x00 einfach 0x30, dann hast du die Ziffer '0'. Bei 0x03 hast du dann entsprechend '3'. Bei den Hex-Zeichen musst du allerdings nicht 0x30, sondern 0x37 (für Großbuchstaben) oder 0x57 (für Kleinbuchstaben) addieren.

    Gruß
    BK
     
    Über eine gute Bewertung freut sich jeder ;)
    Bitte erledigte Threads als "Erledigt" markieren.

    "Though a program be but three lines long, someday it will have to be maintained.''
    -- Geoffrey James, "The Tao of Programming"

  3. #3
    Many0815 Many0815 ist offline Mitglied Bronze
    Registriert seit
    Oct 2009
    Beiträge
    35
    Hi

    Danke für die Antwort.

    Ja das ist mir schon klar.
    Nur habe ich jetzt zum Beispiel die Hex-Zahl 0xF4
    Und ich will zur Application F4 raufschicken. Aber als Char Zeichen mit 'F''4'.

    Cheers
     

  4. #4
    Avatar von Bratkartoffel
    Bratkartoffel Bratkartoffel ist offline gebratene Kartoffel
    tutorials.de Premium-User
    Registriert seit
    Jun 2007
    Ort
    Passau (Niederbayern)
    Beiträge
    1.394
    Hi,

    Code c:
    1
    2
    3
    4
    5
    6
    7
    
    char[3] block;
    int zahl = 0xF4;
     
    sprintf(block, "%02x", 0xFF & zahl);
    /* in block steht jetzt: ['f', '4', \0] */
     
    puts(block); /* Gibt "f4" aus */

    // Edit:
    Oder gleich für alle:
    Code c:
    1
    2
    3
    4
    5
    
    char[18] addr;
     
    /* 08:00:20:ae:fd:7e */
    sprintf(addr, "%02x:%02x:%02x:%02x:%02x:%02x",
      0x08, 0x00, 0x20, 0xae, 0xfd, 0x7e);

    Gruß
    BK
    Geändert von Bratkartoffel (13.12.11 um 11:10 Uhr)
     
    Über eine gute Bewertung freut sich jeder ;)
    Bitte erledigte Threads als "Erledigt" markieren.

    "Though a program be but three lines long, someday it will have to be maintained.''
    -- Geoffrey James, "The Tao of Programming"

  5. #5
    Many0815 Many0815 ist offline Mitglied Bronze
    Registriert seit
    Oct 2009
    Beiträge
    35
    Danke vielmals!

    Genau sowas brauch ich

    Cheers
     

Ähnliche Themen

  1. Antworten: 9
    Letzter Beitrag: 27.10.11, 16:22
  2. Datentyp Char = Buchstabe + Zahl? o.O
    Von HCWD im Forum C/C++
    Antworten: 3
    Letzter Beitrag: 21.05.07, 13:04
  3. zahl binär darstellen
    Von wpb im Forum C/C++
    Antworten: 2
    Letzter Beitrag: 09.11.06, 22:04
  4. [frage] hex zahl zu char zusammenfassen
    Von hansii im Forum C/C++
    Antworten: 4
    Letzter Beitrag: 04.05.06, 20:11
  5. Char oder Zahl?
    Von Sigmund Freud im Forum C/C++
    Antworten: 14
    Letzter Beitrag: 12.01.05, 15:55