首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >主机命令字节中的ether_addr_octet

主机命令字节中的ether_addr_octet
EN

Stack Overflow用户
提问于 2011-02-18 18:08:58
回答 2查看 527关注 0票数 0

我希望将结构ether_addr (ether_addr_octet)转换为整型主机字节顺序表示。有什么想法吗?

代码语言:javascript
复制
ntohl(eth->ether_addr_octet)

不起作用,因为ether_addr_octet是一个字符数组。

问候

EN

回答 2

Stack Overflow用户

发布于 2011-02-18 18:21:13

我不确定这将是什么语义。以太是48位的,最大的ntoh*是32位的值。我想你可以创建一个64位的值来解析char数组,然后调用ntohl()两次...

票数 0
EN

Stack Overflow用户

发布于 2012-04-20 21:21:54

您可以将其转换为char,然后您可以执行其他您想要的操作...

代码语言:javascript
复制
char *ether_ntoa_my(const struct ether_addr *addr){
    static char buf[18];
    sprintf(buf, "%02x%02x:%02x%02x:%02x%02x",
            addr->ether_addr_octet[0], addr->ether_addr_octet[1],
            addr->ether_addr_octet[2], addr->ether_addr_octet[3],
            addr->ether_addr_octet[4], addr->ether_addr_octet[5]);
    return buf;
}

我希望它能帮上忙

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5039982

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档