iOS技术专题C++

C++中的字节对齐

2019-03-22  本文已影响24人  CurryCoder

1.C++中的字节对齐

2.具体实例

```
    #include "iostream"

    using namespace std;


    struct student_info{
        char name;
        int age;
        int number;
        char add;
    };

    int main(){
        cout << sizeof(student_info) << endl;
        return 0;
    }
```

3.常用数据类型的对齐方式(32机系统)

类型 对齐方式(变量存放的起始地址相对于结构的起始地址的偏移量)
char 偏移量必须是sizeof(char)即1的倍数
int 偏移量必须是sizeof(int)即4的倍数
float 偏移量必须是sizeof(float)即4的倍数
double 偏移量必须是sizeof(double)即8的倍数
short 偏移量必须是sizeof(short)即2的倍数

4 #pragma pack(n)来设定变量以n字节对齐方式

5.真题实战

参考博客

https://blog.csdn.net/sweetfather/article/details/78487563

上一篇 下一篇

猜你喜欢

热点阅读