mac地址字符串转数组C语言函数
时间: 2023-11-09 08:02:12 浏览: 217
Linux下C语言将字符串格式(char*)或char[]的MAC地址转换为十六进制数组
可以使用sscanf函数将mac地址字符串转换为数组,具体实现如下:
```c
#include <stdio.h>
void mac_str_to_array(char *mac_str, unsigned char *mac_array) {
sscanf(mac_str, "%02hhx:%02hhx:%02hhx:%02hhx:%02hhx:%02hhx",
&mac_array[0], &mac_array[1], &mac_array[2],
&mac_array[3], &mac_array[4], &mac_array[5]);
}
int main() {
char mac_str[] = "00:11:22:33:44:55";
unsigned char mac_array[6];
mac_str_to_array(mac_str, mac_array);
for (int i = 0; i < 6; i++) {
printf("%02x ", mac_array[i]);
}
return 0;
}
```
阅读全文