全局变量堆内存申请顺序
来源:互联网 发布:支付宝怎么改淘宝密码 编辑:程序博客网 时间:2024/05/16 09:35
全局变量堆内存申请顺序
打开_MAP______OK宏编译运行:
tmp-> g++ 1.cpp -o main && ./main
111111111111111111111111
222222222222222222222222
333333333333333333333333
111111111111111111111111
Segmentation fault
tmp->
tmp-> cat 1.cpp /// @file 1.cpp/// @brief /// @author EastonWoo /// 0.01/// @date 2015-12-05#include <stdio.h> #include <map>#define _MAP______OK // 屏蔽出现段错误bool test();#ifdef _MAP______OK// bss区, _map比 ok全局变量 申请堆内存空间要早。 std::map<int, int> _map;#endifbool ok = test(); // bss区, 申请ok 的堆内存时, ok 有 '=' 号,需要初始化, 初始调用了code区的test段#ifndef _MAP______OK// bss区, _map比 ok全局变量 申请堆内存空间要迟。 所在会出现段错误std::map<int, int> _map;#endifbool test() { printf("111111111111111111111111\n"); _map[1] = 1; printf("222222222222222222222222\n"); return true;}int main (int argc, const char * argv[]) { printf("333333333333333333333333\n"); return 0;}
打开_MAP______OK宏编译运行:
tmp-> g++ 1.cpp -o main && ./main
111111111111111111111111
222222222222222222222222
333333333333333333333333
屏蔽_MAP______OK宏编译运行:tmp-> g++ 1.cpp -o main && ./main
111111111111111111111111
Segmentation fault
tmp->
0 0
- 全局变量堆内存申请顺序
- 栈内存申请与堆内存申请
- 申请和释放堆内存
- C++中的内存 堆 栈 全局变量 类
- malloc、calloc、realoc申请堆内存
- 内存申请和释放及堆连续
- 堆和栈的内存申请区别
- heap堆内存顺序表
- 关于全局变量内存分配的顺序
- 关于堆、栈、内存的存储顺序
- 内存分配:堆、栈、全局变量/静态变量、代码区
- 内存分配:堆、栈、全局变量/静态变量、代码区
- 内存分配:堆、栈、全局变量/静态变量、代码区
- 内存分配:堆、栈、全局变量/静态变量、代码区
- 堆内存申请与释放的标准流程
- 关于在堆中申请内存的思考
- 关于windows下堆内存的申请与释放
- linux C语言 内存申请 堆 栈 大小限制
- Assertion failure in -[MASViewConstraint install]
- 考上好大学,然后进入IT行业是穷人孩子晋级中产的唯一出路?(好多年不转载别人的文章了,本文的话题是我非常关注的,一直没有写)
- ubuntu14.04 硬盘迁移记录 HHD->SSD
- [Cloud Networking Notes] Week4
- git客户端连接ssh端口不是22的gitlab
- 全局变量堆内存申请顺序
- MySQL索引和查询优化
- shell的字符串以及字符串的处理
- Arraylist集合中装HashMap集合
- 设置scrollTop
- maven搭建一个Hibernatedemo
- Trie树
- Web项目性能优化之减少HTTP请求次数优化
- WINDOWS API ——CREATEMUTEX——创建互斥对象 http://www.cnblogs.com/wind-net/archive/2012/08/29/2661702.html