MacAdresse umwandeln (Kanonisches Format)
-
Moinsens,
möchte gern meine MacAdresse ausgeben lassen und das im
kanonischen Format. Ausgabe mit printf bzw kopieren mit
sprintf geht wunderbar. Welcher Weg ist unter c++ geläufig??bool getMacAddress() { struct ifreq ifrMac; int iSocket; if((iSocket = socket(AF_INET, SOCK_DGRAM, 0)) == -1) return false; strcpy(ifrMac.ifr_name, "eth0"); if(ioctl(iSocket, SIOCGIFHWADDR , &ifrMac) == -1) return false; memcpy(ucaLocalMacAddress, ifrMac.ifr_hwaddr.sa_data, sizeof(ucaLocalMacAddress)); close(iSocket); std::ostringstream sstr_maccanonicalform; std::cout<<"\n"; for (int i=0;i<6;i++) { printf ("%02x",ucaLocalMacAddress[i]); // c-technik und geht } std::cout<<"\n"; for (int i=0;i<6;i++) { sstr_maccanonicalform <<?????????????? <<ucaLocalMacAddress[i] <<; } std::cout<< "\n"<< sstr_maccanonicalform<<"\n"; return true; }Hat jemand ne Idee??
-
Ich verstehe jetzt nicht ganz, was du meinst. Wo ist das Problem? - Mangelt es einfach an der C++-Umsetzung, oder wie?
Also wenn du Formatierungsmöglichkeiten suchst, dann gibts da in C++ die Manipulatoren:
http://www.cplusplus.com/reference/iostream/manipulators/Im übrigen solltest du vlt. doch ein C++ Tutorial lesen, da gewisse Sachen in C++ nicht mehr nötig sind. Z.B das struct vor Strukturdefinitionen.
Und einrücken solltest du deinen Code auch. Das kann man so kaum lesen.

-
ich glaube er sollte sich erstmal eine formatierungsmöglichkeit für seinen code einfallen lassen
das ist ja schrecklich (zu lesen)