C/C++ 全局变量和局部变量的大小限制

简介: 局部数组变量和全局数组变量的大小限制

做题时发现了如下关键代码的一些问题,请看

#include“iostream”
using namespace std;
int main(){
int a[1000000];//局部变量
return 0;
}

编译运行后发现溢出错误。

#include“iostream”
using namespace std;
    int a[1000000];//全局变量
    int main(){
    return 0;
}

编译运行后正常
据在CodeBlocks中实际测试,局部变量数组到十万位以上就容易造成数组溢出,而全局变量可以达到亿位而不溢出。

目录
相关文章
|
5月前
|
存储 Cloud Native Linux
C++ namespace对全局变量屏蔽的工程化意义解读
C++ namespace对全局变量屏蔽的工程化意义解读
|
6月前
|
存储
C++-静态局部变量
C++-静态局部变量
|
29天前
|
存储 缓存 安全
【C/C++ 关键字 存储类说明符 】 线程局部变量的魔法:C++ 中 thread_local的用法
【C/C++ 关键字 存储类说明符 】 线程局部变量的魔法:C++ 中 thread_local的用法
33 0
|
5月前
|
C语言 C++
07 C++ - 全局变量检测增强(比较C语言)
07 C++ - 全局变量检测增强(比较C语言)
33 0
|
7月前
|
C++
39.【C/C++ 全局变量和局部变量 (详解)】
39.【C/C++ 全局变量和局部变量 (详解)】
56 0
|
C++ 索引
C++ 在函数中使用静态局部变量,让函数返回数组
C++ 在函数中使用静态局部变量,让函数返回数组
216 0
C++ 在函数中使用静态局部变量,让函数返回数组
C/C++中static局部变量的注意事项
C/C++中static局部变量的注意事项
180 0
|
存储 C++
C/C++中全局变量和静态变量的区别
1. 全局变量的作用域是整个项目,它只需要在一个源文件中定义就可以作用于所有的源文件,其它不包括全局变量定义的文件需要用extern关键字再次声明这个全局变量。
1213 0
|
存储 C++ 编译器
C|C++中的静态全局变量,静态局部变量,全局变量,局部变量的区别
static 有两种用法:面向过程程序设计中的static 和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明 static 在类中的作用。    一、面向过程设计中的static    全局变量、局部变量、静态全局变量、静态局部变量的区别   C++变量根据定义的位置的不同的生命周期,具有不同的作用域,作用域可分为 6种:全局作用域,局部作用域,语句作用域,类作用域,命名空间作用域和文件作用域。
1886 0