当前位置: 首页 > wzjs >正文

网站建设制作小程序开发代运营网店公司

网站建设制作小程序开发,代运营网店公司,企业网站页面宽哪里设置,电子商务主要干什么C 创建静态数组出现栈满程序崩溃的问题 问题&#xff1a; 在C中&#xff0c;在函数中创建一个比较大的数组&#xff0c;会导致程序崩溃无法运行。 如&#xff1a; #include<iostream> #include<vector>const int MAX_N 100000 10; int main(){vector<int&g…

C++ 创建静态数组出现栈满程序崩溃的问题

问题:

在C++中,在函数中创建一个比较大的数组,会导致程序崩溃无法运行。
如:

#include<iostream>
#include<vector>const int MAX_N = 100000 + 10; int main(){vector<int> arr[MAX_N];		// 会导致程序根本无法运行cout<<"I am a array"<<endl;	// 这行代码更不会输出!return 0;
}

原因解释:

数组的内存分配机制:

  • 如果是静态数组,如int arr[10],会直接分配在中,栈的空间通常很小,通常为 1~8MB

    栈(Stack) 是程序运行时用于存储局部变量和函数调用上下文的内存区域。它的大小通常由操作系统或编译器限制,默认栈空间很小(通常为 1 ~ 8MB)。

  • 如果动态数组,如int* arr = new int[10],会直接分配在中,堆支持动态内存扩展,就一般情况而言,堆不会出现满的状况,除非内存满了,注意:堆空间需要手动维护也就是在不适用是需要手动释放内存。
    动态数组的形式:
    // 情况一:
    int* arr = (int*) malloc(sizeof(int) * 10);
    // 释放
    free(arr)// 情况二:
    int* arr = (int*) new int[10];
    // 释放
    delete[] arr;// 情况三:(不需要手动维护)
    vector<int> arr(10);
    
  • 静态数组全局定义:将静态数组定义在函数外部,此时静态数组存储的位置变为了一个全局变量,对于全局变量有:全局变量存储在数据段(Data Segment)或 BSS 段中,这些区域的内存空间远大于栈。因此,即使数组非常大(如 100,010 个元素),全局变量的内存分配也不会导致栈溢出。
    1. 数据段和BSS段都是用来存储全局变量和静态变量的,但根据变量是否初始化以及初始化的值来区分两者。
    2. 数据段用于存储已初始化的数据,而BSS段则用于存储未初始化的数据或是初始化为0的数据.这意味着BSS段比数据段更节省磁盘空间,因为它不需要存储实际的初始值,仅需记录需要多少空间来存放这些变量即可。
http://www.dtcms.com/wzjs/396021.html

相关文章:

  • 镇江网站设计建设价格打广告去哪个平台
  • 做外贸怎样上国外网站网站宣传推广方案
  • 怎么样制作个网站开发网站用什么软件
  • 想自己搭建网站得怎么做seo快速排名软件品牌
  • 手机做任务的网站优化seo系统
  • 免费咨询做网站百度推广代理公司哪家好
  • 重庆市网站推广关键词推广方式
  • 如何做慕课网站关键词seo优化排名公司
  • 如何做地方网站推广合肥网站推广优化公司
  • 摄影网站模板seo网络推广专员
  • wordpress恢复到昨天google seo 优化招聘
  • 网站栏目做跳转关键词推广优化app
  • 什么网站建设最便宜广东深圳疫情最新
  • 做视频网站侵权吗渠道网络
  • 网站seo置顶 乐云践新专家中美关系最新消息
  • 怎么做视频解析网站中国网新山东
  • 鲜花店的网站建设长沙seo排名扣费
  • wordpress lofter插件seo自动优化工具
  • html 网站开发知乎关键词排名优化
  • wordpress阿里云图片不显示seo岗位
  • ps如何做游戏模板下载网站网站更换服务器对seo的影响
  • 上海网站建设公司招人百度app打开
  • 用jquery做网站好吗企业营销策略
  • 关于网络营销的网站今日头条热搜榜前十名
  • 无锡网站推广$做下拉去118cr电商平台推广方案
  • 网站建设需要的图片怎么弄信息流优化师是干什么的
  • pc网站做移动适配软文营销的五个步骤
  • 百度云建设网站百度网页版
  • 做mro的b2b网站百度广告推广费用
  • 通过php获取手机网站访客的手机号码免费网页在线客服系统代码