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

那个视频网站最好最全网址互联网保险和线下保险的优缺点

那个视频网站最好最全网址,互联网保险和线下保险的优缺点,工程建设的概念是什么,网页制作和设计实验报告1.2 C内存 参考 https://www.nowcoder.com/issue/tutorial?tutorialId93uuid8f38bec08f974de192275e5366d8ae24 1.2.1 简述一下堆和栈的区别 参考回答 区别#xff1a; 堆栈空间分配不同。栈由操作系统自动分配释放 #xff0c;存放函数的参数值#xff0c;局部变…1.2 C内存 参考 https://www.nowcoder.com/issue/tutorial?tutorialId93uuid8f38bec08f974de192275e5366d8ae24 1.2.1 简述一下堆和栈的区别 参考回答 区别 堆栈空间分配不同。栈由操作系统自动分配释放 存放函数的参数值局部变量的值等堆一般由程序员分配释放。 堆栈缓存方式不同。栈使用的是一级缓存 它们通常都是被调用时处于存储空间中调用完毕立即释放堆则是存放在二级缓存中速度要慢些。 堆栈数据结构不同。堆类似数组结构栈类似栈结构先进后出。 1.2.2 简述C的内存管理 参考回答 内存分配方式 在C中内存分成5个区他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。 栈在执行函数时函数内局部变量的存储单元都可以在栈上创建函数执行结束时这些存储单元自动被释放。 堆就是那些由new分配的内存块一般一个new就要对应一个delete。 自由存储区就是那些由malloc等分配的内存块和堆是十分相似的不过是用free来结束自己的生命。 全局/静态存储区全局变量和静态变量被分配到同一块内存中 常量存储区这是一块比较特殊的存储区里面存放的是常量不允许修改。 常见的内存错误及其对策 1内存分配未成功却使用了它。 2内存分配虽然成功但是尚未初始化就引用它。 3内存分配成功并且已经初始化但操作越过了内存的边界。 4忘记了释放内存造成内存泄露。 5释放了内存却继续使用它。 对策 1定义指针时先初始化为NULL。 2用malloc或new申请内存之后应该立即检查指针值是否为NULL。防止使用指针值为NULL的内存。 3不要忘记为数组和动态内存赋初值。防止将未被初始化的内存作为右值使用。 4避免数字或指针的下标越界特别要当心发生“多1”或者“少1”操作 5动态内存的申请与释放必须配对防止内存泄漏 6用free或delete释放了内存之后立即将指针设置为NULL防止“野指针” 7使用智能指针。 内存泄露及解决办法 3.什么是内存泄露 简单地说就是申请了一块内存空间使用完毕后没有释放掉。1new和malloc申请资源使用后没有用delete和free释放2子类继承父类时父类析构函数不是虚函数。3Windows句柄资源使用后没有释放。 怎么检测 第一良好的编码习惯使用了内存分配的函数一旦使用完毕,要记得使用其相应的函数释放掉。 第二将分配的内存的指针以链表的形式自行管理使用完毕之后从链表中删除程序结束时可检查改链表。 第三使用智能指针。 第四一些常见的工具插件如ccmalloc、Dmalloc、Leaky、Valgrind等等。 1.2.3 malloc和局部变量分配在堆还是栈 参考回答 malloc是在堆上分配内存需要程序员自己回收内存局部变量是在栈中分配内存超过作用域就自动回收。1.2.4 程序有哪些section分别的作用程序启动的过程怎么判断数据分配在栈上还是堆上 参考回答 1.2.4 程序有哪些section分别的作用程序启动的过程怎么判断数据分配在栈上还是堆上 参考回答 一个程序有哪些section 如上图从低地址到高地址一个程序由代码段、数据段、BSS段、堆、共享区、栈等组成。 数据段存放程序中已初始化的全局变量和静态变量的一块内存区域。 代码段存放程序执行代码的一块内存区域。只读代码段的头部还会包含一些只读的常数变量。 BSS 段存放程序中未初始化的全局变量和静态变量的一块内存区域。 可执行程序在运行时又会多出两个区域堆区和栈区。 堆区动态申请内存用。堆从低地址向高地址增长。 栈区存储局部变量、函数参数值。栈从高地址向低地址增长。是一块连续的空间。 最后还有一个共享区位于堆和栈之间。 程序启动的过程 操作系统首先创建相应的进程并分配私有的进程空间然后操作系统的加载器负责把可执行文件的数据段和代码段映射到进程的虚拟内存空间中。 加载器读入可执行程序的导入符号表根据这些符号表可以查找出该可执行程序的所有依赖的动态链接库。 加载器针对该程序的每一个动态链接库调用LoadLibrary 1查找对应的动态库文件加载器为该动态链接库确定一个合适的基地址。 2加载器读取该动态链接库的导入符号表和导出符号表比较应用程序要求的导入符号是否匹配该库的导出符号。 3针对该库的导入符号表查找对应的依赖的动态链接库如有跳转则跳到3 4调用该动态链接库的初始化函数 初始化应用程序的全局变量对于全局对象自动调用构造函数。 进入应用程序入口点函数开始执行。 怎么判断数据分配在栈上还是堆上首先局部变量分配在栈上而通过malloc和new申请的空间是在堆上。 1.2.5 初始化为0的全局变量在bss还是data 参考回答 BSS段通常是指用来存放程序中未初始化的或者初始化为0的全局变量和静态变量的一块内存区域。特点是可读写的在程序执行之前BSS段会自动清0。 1.2.6 什么是内存泄露内存泄露怎么检测 参考回答 什么是内存泄露 简单地说就是申请了一块内存空间使用完毕后没有释放掉。1new和malloc申请资源使用后没有用delete和free释放2子类继承父类时父类析构函数不是虚函数。3Windows句柄资源使用后没有释放。 怎么检测 第一良好的编码习惯使用了内存分配的函数一旦使用完毕,要记得使用其相应的函数释放掉。 第二将分配的内存的指针以链表的形式自行管理使用完毕之后从链表中删除程序结束时可检查改链表。 第三使用智能指针。 第四一些常见的工具插件如ccmalloc、Dmalloc、Leaky、Valgrind等等。
http://www.w-s-a.com/news/864048/

相关文章:

  • 马鞍山建设工程监督站建管处网站免费的海报模板网站
  • 类似百度的网站移动端的网站怎么做的
  • 网站开发需要什么文凭网站分析的优劣势
  • 海尔网站建设不足之处山东网站营销
  • 楚雄 网站建设广告设计一般人能学吗
  • 热搜榜排名前十山东seo多少钱
  • 衡水哪有建网站的吗企业信息系统英文
  • 有模板怎么建站wordpress媒体库图片路径
  • 怎么做网站h汉狮企业网站营销的实现方式
  • 新津县建设局网站怎么做区块链网站
  • 网站设计与制作是什么专业广州优化网站
  • 腾讯有做淘宝客网站吗网站开发包
  • 网站整体营销方案网站建设百度贴吧
  • 宣传式网站养生网站模板
  • 临猗网站建设天津做网站哪家服务好
  • 郑州做网站九零后用织梦建设网站的步骤
  • 莱芜网站优化加徽信xiala5江都网站制作
  • 网站开发工具书焦作网站开发公司电话
  • 石狮网站建设报价百度爱采购怎么优化排名
  • 广州网站开发系统如何建设百度网站
  • 免费建立一个个人网站网站流量图怎么做
  • 微信网站建设公司首选网站后台更新 前台不显示
  • 撰写网站专题活动策划方案未成年做网站
  • 免费在线响应式网站自助建站网页设计与网站建设试卷
  • 四川省肿瘤医院搜索优化整站优化
  • 新钥匙建站深圳创业补贴政策2023
  • 建网站需要准备什么网站三个月没排名
  • 网站运营规划网站推广的手段
  • cvm可以做网站服务器吗网片围栏
  • 培训前端网站开发网站开发 群