📄 mac2addr.c
字号:
//运行结果:把一个六位char数组,转换成mac地址形式的字符串.
//比如:{0xac,0x6c,0x5c,0x4d,0x12,0x0}-->"ac:6c:5c:4d:12:00".
#include "string.h"
#include "stdio.h"
char *mac2addr(unsigned char device_mac[])
{
char mac[18],tmp[3];
int i;
memset(mac,0,18);
if(device_mac[0]<16)
sprintf(mac,"0%x",device_mac[0]);
else
sprintf(mac,"%x",device_mac[0]);
for(i=1;i<6;i++)
{
memset(tmp,0,3);
if(device_mac[i]<16)
{
sprintf(tmp,":0%x",device_mac[i]);
}
else
sprintf(tmp,":%x",device_mac[i]);
strcat(mac,tmp);
}
printf("%x:%x:%x:%x:%x:%x\n",device_mac[0],device_mac[1],device_mac[2],device_mac[3],device_mac[4],device_mac[5]);
return strdup(mac);
}
int main()
{
unsigned char i[6]={0xac,0x6c,0x5c,0x4d,0x12,0x0};
char *str;
printf("%x:%x:%x:%x:%x:%x\n",i[0],i[1],i[2],i[3],i[4],i[5]);
str=mac2addr(i);
//free(str);
printf("the result mac is:%s\n",str);
return 1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -