内存对齐,malloc内存对齐

本文深入探讨了内存对齐的概念,重点解析了在使用malloc分配内存时如何进行内存对齐,以及它对程序性能的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 #include <iostream>
2 #include <cstdlib>
3 using namespace std;
4
5 int main()
6 {
7 struct {
8 int a;
9 long b;
10 float c;
11 double d;
12 }var;
13 int a[5] = {0};
14 cout << "a address:" << (int*)a << endl;
15 cout << a << endl;
16 cout << "int: " << sizeof(int) << endl;
17 cout << "long: " << sizeof(long) << endl;
18 cout << "float: " << sizeof(float) << endl;
19 cout << "double:" << sizeof(double) << endl;
20
21 cout << &(var.a) << endl;
22 cout << &(var.b) << endl;
23 cout << &(var.c) << endl;
24 cout << &(var.d) << endl;
25 int *pa = (int*)malloc(sizeof(int));
26 long *pb = (long*)malloc(sizeof(long));
27 float *pc = (float*)malloc(sizeof(float));
28 double *pd = (double*)malloc(sizeof(double));
29 cout << pa << endl;
30 cout << pb << endl;
31 cout << pc << endl;
32 cout << pd << endl;
33
34 delete pa;
35 delete pb;
36 delete pc;
37 delete pd;

38 }




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值