-1

私は持っています

    unsigned char src_mac[6];

これは、%02x形式の値を保持します。たとえば、src_mac [0]で値を見つけるには、次のようにします。

    printf("%02x\n",src_mac[0]);

src_macに値を入れる方法を知りたい(文字列として保存されたMACアドレスをsrc_macに入れてから、MACアドレスをether_arp構造体に入れる必要があります。

4

1 に答える 1

1

回答を編集しています...読み間違えました

とにかく、パラメータとしてこれsscanfを試しhhxてください...それは16進値を読み取り、それをcharとして保存することを意味します(値をintとして保存するデフォルトとは異なります)

sscanf(string_mac, "%hhx:%hhx:%hhx:%hhx:%hhx:%hhx", &src_mac[5], &src_mac[4], &src_mac[3], 
                                                    &src_mac[2], &src_mac[1], &src_mac[0]);
于 2013-01-26T15:31:05.017 に答える