Cでコンパイルすると、次の警告が表示されます。
../tcpuip/uip_arp.c: In function 'display_arp_table':
../tcpuip/uip_arp.c:547: warning: '0' flag ignored with precision and '%x' gnu_p
rintf format
../tcpuip/uip_arp.c:547: warning: '0' flag ignored with precision and '%x' gnu_p
rintf format
../tcpuip/uip_arp.c:547: warning: '0' flag ignored with precision and '%x' gnu_p
rintf format
../tcpuip/uip_arp.c:547: warning: '0' flag ignored with precision and '%x' gnu_p
rintf format
../tcpuip/uip_arp.c:547: warning: '0' flag ignored with precision and '%x' gnu_p
rintf format
../tcpuip/uip_arp.c:547: warning: '0' flag ignored with precision and '%x' gnu_p
rintf format
../tcpuip/uip_arp.c:547: warning: '0' flag ignored with precision and '%x' gnu_p
rintf format
../tcpuip/uip_arp.c:547: warning: '0' flag ignored with precision and '%x' gnu_p
rintf format
../tcpuip/uip_arp.c:547: warning: '0' flag ignored with precision and '%x' gnu_p
rintf format
../tcpuip/uip_arp.c:547: warning: '0' flag ignored with precision and '%x' gnu_p
rintf format
../tcpuip/uip_arp.c:547: warning: '0' flag ignored with precision and '%x' gnu_p
rintf format
../tcpuip/uip_arp.c:547: warning: '0' flag ignored with precision and '%x' gnu_printf format
エラーが発生する行は
RELEASE_MSG("MAC: %0.2x.%0.2x.%0.2x.%0.2x.%0.2x.%0.2x ",(unsigned char)tabptr->ethaddr.addr[0],(unsigned char)tabptr->ethaddr.addr[1],(unsigned char)tabptr->ethaddr.addr[2],(unsigned char)tabptr->ethaddr.addr[3],(unsigned char)tabptr->ethaddr.addr[4],(unsigned char)tabptr->ethaddr.addr[5]);
tabptrはstructarp_entryのポインタです
PACKED struct arp_entry {
u16_t ipaddr[2];
struct uip_eth_addr ethaddr;
u8_t time;
#ifdef _ALIGNED_
u8_t dummy;
#endif
}
ethadderはstructuip_eth_addrのポインターです
PACKED struct uip_eth_addr {
u8_t addr[6];
} ;
誰かがこの警告についていくつかの光を共有できるかどうかお願いします。%0.2xは2桁の16進数としての文字を意味することを私は知っています。ヘルプ!