标准c宏表示MAC地址的长度?

时间:2012-04-05 18:14:42

标签: c macros mac-address

是否有标准(或半标准,广泛部署)的C宏:

  1. 格式为00:11:22:33:44:55的MAC地址长度,即17个字节。
  2. 原始MAC的长度,即6个字节。
  3. 我已经在不同时间看到过这些在专有头文件中定义的内容,但我看到很多样本/教程代码,否则使用“正确”的宏并且没有任何东西 - “6”总是硬编码

    FWIW我在linux上。

    显然,定义我自己的东西是微不足道的,但我想在可能的情况下使用标准。

1 个答案:

答案 0 :(得分:2)

某些平台定义了“/usr/include/net/ethernet.h”,其中包含:

#define ETHER_ADDR_LEN 6

有些平台在if_ether.h中有类似的定义(位于不同的地方,包括netinet)。

但是,我不知道任何定义“字符串格式化”地址长度的内容,而且我不知道任何强加这些#define的标准,所以它们可能不是普遍可移植的。