今天在公司遇到这个问题,之前没有用到过,现在探索一下
#include<stdio.h>
void main()
{
int mac[6]={0x11223344,0x34dcfe1f,0x56,0x78,0x9a,0xbc};
char rcmac[12]={0};
//for(i=0;i<6;i++)
{
printf("0x%x\n",*mac);
printf("0x%x\n",*(mac+1));
printf("0x%02x\n",*((char *)mac+1));
}
}
输出为
0x11223344
0x34dcfe1f
0x03
可以的出最后一行中((char )mac+1))代表的是将mac指向char型的地址并将其移动char型个地址。