tutorials.de Buch-Aktion 05/2012
Like Tree2Danke
  • 1 Beitrag von deepthroat
  • 1 Beitrag von deepthroat
ERLEDIGT
JA
ANTWORTEN
4
ZUGRIFFE
318
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von Shooter2k
    Shooter2k Shooter2k ist offline Mitglied Brokat
    Registriert seit
    Mar 2002
    Ort
    Hamburg
    Beiträge
    381
    Hallo liebes Forum.
    Ich möchte folgende printf-Ausgabe als String in einer funktion zurückgeben. Weis aber nicht wie, da ich noch nicht sehr viel mit c++ gemacht habe.

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    
     
    void GetMACaddress()
    {
        unsigned char MACData[6];
     
        UUID uuid;
        UuidCreateSequential( &uuid );              
     
        for (int i=2; i<8; i++) 
        {
            MACData[i - 2] = uuid.Data4[i];
        }
     
        printf("%02X%02X%02X%02X%02X%02X", 
            MACData[0], MACData[1], MACData[2], MACData[3], MACData[4], MACData[5]);
     
    }

    Statt void GetMACaddress() müsste ich ja dann string GetMACaddress() schreiben oder?
    habe: string mac = MACData[0].MACData[1].MACData[3].MACData[4]; return mac; versucht aber es geht leider nicht.

    Kann mir jemand helfen statt die mac addy auszugeben als string zu speichern und zu returnen?

    Vielen Dank
    gruß
     
    Wer mit dem Strom schwimmt, erreicht die Quelle nie.

  2. #2
    deepthroat deepthroat ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Jun 2005
    Beiträge
    8.168
    Hi.

    In C++ würde ich einfach einen ostringstream verwenden:
    Code cpp:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    
    string GetMACAddress() {
      ...
      std::ostringstream out;
      out << std::hex << std::setfill('0');
      for (int i = ...) {
        out << std::setw(2) << static_cast<unsigned int>(uuid.Data4[i]);
      }
      return out.str();
    }
    Gruß
    Shooter2k bedankt sich. 
    If at first you don't succeed, try again. Then quit. No use being a damn fool about it.

  3. #3
    Avatar von Shooter2k
    Shooter2k Shooter2k ist offline Mitglied Brokat
    Registriert seit
    Mar 2002
    Ort
    Hamburg
    Beiträge
    381
    Hi deepthroat,
    vielen Dank für deine Antwort. Jetzt funktioniert es wunderbar. Kannst du mir vielleicht noch sagen wie ich aus der MAC wieder Großbuchstaben mache. Jetzt besteht die MAC nur aus kleinbuchstaben.

    Dank dir sehr dafür
    gruß
     
    Wer mit dem Strom schwimmt, erreicht die Quelle nie.

  4. #4
    deepthroat deepthroat ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Jun 2005
    Beiträge
    8.168
    Einfach:
    Code cpp:
    1
    
    out << std::uppercase << ...
    mit vor die Schleife schreiben.

    Gruß
    Shooter2k bedankt sich. 
    If at first you don't succeed, try again. Then quit. No use being a damn fool about it.

  5. #5
    Avatar von Shooter2k
    Shooter2k Shooter2k ist offline Mitglied Brokat
    Registriert seit
    Mar 2002
    Ort
    Hamburg
    Beiträge
    381
    Sehr schön danke
     
    Wer mit dem Strom schwimmt, erreicht die Quelle nie.

Ähnliche Themen

  1. Antworten: 4
    Letzter Beitrag: 07.02.11, 16:32
  2. Antworten: 4
    Letzter Beitrag: 05.12.10, 23:07
  3. Antworten: 5
    Letzter Beitrag: 22.11.10, 17:31
  4. Antworten: 2
    Letzter Beitrag: 04.09.06, 12:07
  5. Einen anderen Pc wia Macadresse Aufstarten
    Von MasterSHYBBY im Forum Visual Basic 6.0
    Antworten: 2
    Letzter Beitrag: 02.03.04, 04:37