0

如何在 C 中将 MAC 地址 ff:ff:ff:ff:ff:ff 写为 char[]?

我只是做char macaddress[6] = "%0xFF%0xFF%0xFF%0xFF%0xFF%0xFF";

我不确定。谢谢!

4

2 回答 2

3
char macaddress[6] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff };
于 2009-12-03T08:51:24.717 回答
1

我宁愿这样char macaddress[] = "\xff\xff\xff\xff\xff\xff";

char 数组初始化有一些编码指南,因为需要以 null 结尾,并且大小实际上是 7。

不要使用比数组包含更多字符(包括 '\0')的字符串文字来初始化字符数组。因此,有必要指定字符串文字的正确大小(char s[4] = "abc";)。
但是,因为即使字符串字面量的大小发生变化,也总能得到期望的结果,所以推荐使用不描述大小的方法(char s[] = "abc";)。

参考: http: //www.caravan.net/ec2plus/guide.html

于 2009-12-03T08:46:57.017 回答