进程中的地址是从何而来

本文介绍了可执行文件的生成过程,包括目标文件的编译和链接,重点讨论了虚拟地址空间的分配。在链接阶段,分配了虚拟地址,并在进程执行时通过页表映射到物理地址,确保每个进程拥有独立的虚拟地址空间。
摘要由CSDN通过智能技术生成

写了这么多年代码,地址这个东西每天都会使用,那么今天总结一下地址这个东西的由来。
本文参考了参考了《程序员的自我修养》一书.
先看看下面代码:

#include <iostream>
#include <cstdint>

void fun()
{
    std::cout<<"this a fun() "<<std::endl;
}

uint32_t a = 1;

int main()
{
    uint32_t b = 2;
    std::cout<<a<<std::endl;
    std::cout<<b<<std::endl;
    std::cout<<(void*)fun<<std::endl;
    std::cout<<&b<<std::endl;

    return 0;
}

执行结果如下:

1
2
0x4008ed
0x7fff391dd54c
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值