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

文化部网站总分馆建设实施意见找客户的软件有哪些

文化部网站总分馆建设实施意见,找客户的软件有哪些,wordpress响应多少才正常,商城app官方下载C核心编程<内存分区模型>1.内存分区模型1.1内存分区模型概述1.2内存分区的意义1.3程序允许前1.3.1代码区1.3.2全局区1.3.2.1全局区的演示1.4程序运行后1.4.1栈区1.4.1.1栈区演示1.4.2堆区1.4.2.1堆区演示1.5new操作符1.5.1new操作的概述1.内存分区模型 1.1内存分区模型概…

C++核心编程<内存分区模型>

    • 1.内存分区模型
      • 1.1内存分区模型概述
      • 1.2内存分区的意义
      • 1.3程序允许前
        • 1.3.1代码区
        • 1.3.2全局区
          • 1.3.2.1全局区的演示
      • 1.4程序运行后
        • 1.4.1栈区
          • 1.4.1.1栈区演示
        • 1.4.2堆区
          • 1.4.2.1堆区演示
      • 1.5new操作符
        • 1.5.1new操作的概述

1.内存分区模型

1.1内存分区模型概述

  • C++程序在执行时,将内存大方向分为4个区域
    • 代码区: 存放函数体的二进制代码,由操作系统进行管理的
    • 全局区: 存放全局变量静态变量以及常量
    • 栈区: 由编译器自动分配释放,存放函数的参数值局部变量
    • 堆区: 由程序员分配释放,若程序员不释放,程序结束时由操作系统回收

1.2内存分区的意义

  • 不同区域存放的数据,赋予不同的生命周期

1.3程序允许前

  • 在程序编译后,生成看exe可执行文件,未执行该程序前分为两个区域

1.3.1代码区

  • 存放CPU执行的机器指令
  • 代码区是共享的,共享的目的是对于频繁被执行的程序,只需要在内存中有一份代码即可
  • 代码区是只读的,使其只读的原因使防止程序意外地修改了它的指令

1.3.2全局区

  • 全局变量静态变量存放在此
  • 全局区还包含了常量区字符串常量和**其他常量(const修饰的全局变量)**也存放在此
  • 该区域的数据在程序结束后由操作系统释放
1.3.2.1全局区的演示
#include<iostream>
using namespace std;//全局变量
int gNum = 123;const int cgNum = 123;int main()
{// 静态变量static int sNum = 123;//常量//字符串常量// 就是一个普通的字符串// const修饰的变量//const 修饰的局部变量const string cstr = "富甲一方钱七";//创建普通局部变量int num = 123;cout << "num的局部变量内存地址为: " << &num << endl;cout << "gNum全局变量的内存地址为: " << &gNum << endl;cout << "sNum静态变量的内存地址为: " << &sNum << endl;cout << "字符串常量的地址为: " << &"法外狂徒张三" << endl;cout << "const修饰的全局变量的地址为: " << &cgNum << endl;cout << "const修饰的局部变量地址为: " << &cstr << endl; //内存地址与num局部变量地址很近system("pause");return 0;
}

1.4程序运行后

1.4.1栈区

  • 由编译器自动分配释放,存放函数的参数值局部变量
  • 注意事项: 不要返回局部变量的地址,栈区开辟的数据由编译器自动释放
1.4.1.1栈区演示
#include<iostream>
using namespace std;// 栈区数据注意事项   --- 不要返回局部变量的地址
// 栈区的数据由编译器管理开辟和释放int* func();int main()
{int* p = func();cout << *p << endl; // 23   第一次可以打印正确的数字,是因为编译器做了一次保留cout << *p << endl; // 2073663880system("pause");return 0;
}int* func() 
{int num = 23; // 局部变量 存放在栈区,栈区的数据在函数执行完后自动释放return &num;}

1.4.2堆区

  • 由程序员分配释放,若程序员不释放,程序结束时,由操作系统回收
  • 在c++中主要利用new在堆区开辟内存
1.4.2.1堆区演示
#include<iostream>
using namespace std;int* func();int main()
{int* p = func();cout << *p << endl; // 123cout << *p << endl; // 123system("pause");return 0;
}int* func() 
{// 利用new关键字  可以将数据开辟到堆区// 指针 本质也是局部变量,放在栈上,指针保存的数据放在堆区// new int(123)  开辟的空间,返回的是指针int* p = new int(123);return p;
}

1.5new操作符

1.5.1new操作的概述

  • C++利用new操作符堆区开辟数据
  • 堆区开辟的数据,由程序员手动开辟,手动释放,释放利用操作符delete
    #include<iostream>
    using namespace std;int* func();int main()
    {int* p = func();cout << *p << endl; // 123cout << *p << endl; // 123system("pause");return 0;
    }int* func() 
    {// 利用new关键字  可以将数据开辟到堆区// 指针 本质也是局部变量,放在栈上,指针保存的数据放在堆区int* p = new int(123);return p;
    }
    
  • 语法
    new 数据类型
    
  • 利用new创建的数据会返回该数据对应的类型的指针
    #include<iostream>
    using namespace std;
    int* func();
    void test_1();
    void teste_2();int main()
    {test_1();system("pause");return 0;
    }// 在堆区利用new开辟数据空间
    int* func() 
    {// 利用new关键字开启的数据类型,返回都是指针int* p = new int(123);return p;
    }
    void test_1() 
    {int* p = func();cout << *p << endl; // 123//堆区的数据  由程序员管理开辟,程序员管理释放//如果想释放堆区的数据,利用关键词deletedelete p;// cout << *p << endl; // 引发了异常: 读取访问权限冲突。
    }
    // 在堆区利用new开辟数组
    void test_2()
    {// 创建10整型数据的数组,在堆区// 返回连续空间的指针的首地址int* arr = new int[10];// 释放堆区的数组// 释放数据需要加[] 释放delete[] arr;
    }
    
http://www.dinnco.com/news/36051.html

相关文章:

  • 免费做爰小说网站推广计划怎么做推广是什么
  • 发改委门户网站建设思路天津百度推广公司电话
  • 让公司做网站要注意什么网络营销方式都有哪些
  • 苏州知名网站制作公司b2b网站有哪些平台
  • 黑白灰 网站建站平台有哪些
  • 宜昌做网站的公司免费自己建网站
  • 手机助手搜索引擎优化排名seo
  • 荣成市信用建设官方网站2022网站seo
  • 办公空间设计尺寸标准成都网站搭建优化推广
  • 做t-shirt素材网站西安网站seo诊断
  • 彭州做网站seo推广的公司
  • 英文搜索网站小红书推广
  • 制作人在那个网站能看热门搜索关键词
  • 淮南医院网站建设公司网站设计模板
  • seo网站编辑免费百度seo引流
  • 装饰公司在哪个网站上接活青岛百度代理公司
  • 泗洪县城乡建设局网站网络链接推广
  • 有域名了如何建设网站百度推广怎么做的
  • 网站设计网页配色爱站网seo
  • 合肥网络公司 网站建设亚洲长尾关键词挖掘
  • 做网站的分辨率百度推广课程
  • 网上怎么做网站赚钱电子制作网站
  • 国内做钢铁的网站网站推广优化服务
  • 自己有网站 做app吗厦门人才网597人才网
  • 金融网站开发方案手机网站建设
  • 网站服务器有哪几种丹东seo推广优化报价
  • 做网站尽在美橙互联seo关键词优化排名公司
  • 响应式网站底部菜单栏简述seo的概念
  • 网站设计的思路广州网站建设正规公司
  • 家用电脑做网站后台百度怎么搜索关键词