C语言中的packed含义
這篇文章主要介紹“C語言中的packed含義”,在日常操作中,相信很多人在C語言中的packed含義問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”C語言中的packed含義”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!
packed的涵義研究
在C中,聲明結(jié)構(gòu)體時可以用__attribute__ ((__packed__))來修飾,表示壓縮結(jié)構(gòu)體所占用的內(nèi)存空間,使后一個元素緊貼錢一個元素放置。見下面的示例程序:
#include
#include
struct upack
{
char s;
int i;
};
struct packs
{
char s;
int i;
}__attribute__ ((__packed__));
int main(int argc, char *argv[])
{
printf("size of packs is %d and upack is %dn",sizeof(struct packs),sizeof(struct upack));
printf("size of int is %dn",sizeof(int));
printf("size of char is %dn",sizeof(char));
struct upack upk;
printf("address of upk is %dn",&upk);
printf("address of upk.s is %dn",&(upk.s));
printf("address of upk.i is %dn",&(upk.i));
struct packs pk;
printf("address of pk is %dn",&pk);
printf("address of pk.s is %dn",&(pk.s));
printf("address of pk.i is %dn",&(pk.i));
system("PAUSE");
return 0;
}
總結(jié)
以上是生活随笔為你收集整理的C语言中的packed含义的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 深度学习之基于GAN实现手写数字生成
- 下一篇: Spring是什么意思