#include<stdio.h>
#include<stdlib.h>
typedef struct{
char a;
short b;
int c;
}__attribute__ ((packed)) sttest ;
/*__attribute__ ((packed));*/
int main(void)
{
char stsize;
sttest stTest;
void *addra,*addrb,*addrc;
stsize = sizeof(sttest);
addra = &stTest.a;
addrb = &stTest.b;
addrc = &stTest.c;
printf("stsize is %d\n",stsize);
printf("a is %d\n",addra);
printf("a is %d\n",addrb);
printf("a is %d\n",addrc);
return 0;
}
__attribute__ ((packed)) 对齐或者取消对齐实例,注意摆放位置,不然没办法跟编译器好好讲话
最新推荐文章于 2022-10-08 14:26:17 发布