免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4678 | 回复: 6
打印 上一主题 下一主题

如何存储网卡的mac地址? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-11-16 10:03 |只看该作者 |倒序浏览
需要有一个变量来存储网卡的mac地址.(6个字节)
比如存储地址0123456789ab
但是用字符数组存的时候它的长度是12个字节的,也就是说,系统把01存在了两个字节中.如何才能把01存在一个字节中讷?

论坛徽章:
0
2 [报告]
发表于 2004-11-16 10:06 |只看该作者

如何存储网卡的mac地址?

>;>;系统把01存在了两个字节中

???

论坛徽章:
0
3 [报告]
发表于 2004-11-16 10:59 |只看该作者

如何存储网卡的mac地址?

也就是说,系统默认存储字符的时候,一个字符占用一个字节,比如存储字符0和1,0存储一个字节,1存储一个字节。但是我记得有另一种存储方式可以把01一起存在一个字节中,我想问的就是这个,如何把01存储在一个字节里呢?
或者说您有更好的存出mac地址的方法?
我现在的程序想自己构造一个以太网帧,mac地址自己填写,以太网帧头中关于mac地址是这样定义的unsigned char macaddr[6];我现在无法把mac地址填入这个数组中去,比如我想填入0123456789ab(6字节的mac地址),这样添strcpy(macaddr,"0123456789ab"是不行的,实际上只能填入012345三个字节。
这次我说明白了么?

论坛徽章:
0
4 [报告]
发表于 2004-11-16 11:40 |只看该作者

如何存储网卡的mac地址?

晕,移位不就行了吗

论坛徽章:
0
5 [报告]
发表于 2004-11-16 15:08 |只看该作者

如何存储网卡的mac地址?

老大先别晕,以把ab添入一个字节为例,原来a在第一个字节低四位,左移,a到了高四位,那么这个字节的低四位如何添入b讷?

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
6 [报告]
发表于 2004-11-16 16:38 |只看该作者

如何存储网卡的mac地址?

直接按16进制读入不就完了?

论坛徽章:
0
7 [报告]
发表于 2004-11-16 17:52 |只看该作者

如何存储网卡的mac地址?

这是16进制数(MAC地址就是6字节的)的字面量,不要与字符串搞在一起,两码事。楼主朋友,你将这两者的概念区分开之时,你的问题就能解决了。

aero说的对,按16进制处理就可以了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP