如何将mac地址转换成6字节的字符数组

(>^ω^<)喵上树 2014-04-01 04:39:40
如何将一个 cahr mac[18] = "00:0f:2a:d2:fe:ef"; 的mac地址转换成
char mac[6] 六个字节的字符数组??
...全文
1802 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq120848369 2014-04-01
  • 打赏
  • 举报
回复
16进制转字节表示。
赵4老师 2014-04-01
  • 打赏
  • 举报
回复
第6行maxhex[i]=(char)v; 纠正为machex[i]=(char)v;
赵4老师 2014-04-01
  • 打赏
  • 举报
回复
char macstr[18] = "00:0f:2a:d2:fe:ef";
char machex[6];
int v,i;
for (i=0;i<6;i++) {
    sscanf(macstr+3*i,"%2x",&v);
    maxhex[i]=(char)v;
}
作为一个C程序员,对 scanf,sscanf,fscanf printf,sprintf,fprintf 这类函数的用法,还是要做到“拳不离手,曲不离口”的。
(>^ω^<)喵上树 2014-04-01
  • 打赏
  • 举报
回复
嗯,谢谢了,实验了,没有问题!!!
昵称很不好取 2014-04-01
  • 打赏
  • 举报
回复 1
要这个效果吗?
    char mac[] = "00:0f:2a:d2:fe:ef";
    unsigned char addr[6];
    sscanf(mac,"%2x:%2x:%2x:%2x:%2x:%2x",addr,addr+1,addr+2,addr+3,addr+4,addr+5);

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧