Tags:
c++
hej
jeg skal bruge en funktion der læser en (eller flere) bytes fra
en char buffer, og returnere en string med byte værdien i hex:
char mac[] = { 0xff, 0x41 };
char *getmac(char* a_buff, int len)
{
char *s;
// koden ???
return s; // skulle så returnere "ff41"
}
main
{
printf("mac: %s", getmac(mac, 2);
}
jeg ved at printf("%X", mac); vil gøre det samme, men det paser dårligt med inkapsling i resten af programmet at udskrivingen sker direkte, så jeg må ha det som en string..
2 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 2 karma
Hvad med at blot at bruge
char message[(len*2)+1];
sprintf(message, "%X", a_buff);
return message;
i funktionen char *getmac ?
[Redigeret d. 23/09-05 21:55:39 af Jonatan Hertel]
0
jep perfekt!
jeg kendte sgu ikke til sprintf()
tak