• 【日更计划037】数字IC基础题


    上期答案

    [071] 堆和栈的区别是什么?

    栈是内存的一块特殊区域,用于存储由函数创建的临时变量。每次函数声明一个新的自动变量时,它将被压入栈,并且每次函数退出时,会删除压入栈的所有变量。所有局部变量都使用栈进行存储,并且时自动管理的,也有大小限制。如果栈的空间不足,则会出现栈溢出错误。

    堆则是需要管理的内存区域,程序员需要分配和释放内存,某些语言中是自动完成的。堆通常用于存储静态变量和对象。与栈相比,堆略慢,并且是通过指针应用的,并且可以在任何位置应用堆的变量。堆的大小也是可以更改的,当可用内存是不连续的块时,堆可能会出现碎片问题。

    [072] a++和++a的区别是?

    ++a首先“a”自增,然后返回引用“a”的值。 因此,如果将“++ a”分配给变量,则将使用递增值“a”。

    a++首先返回值“a”(当前值为“a”),然后“a”自增。因此,如果将“a ++”分配给变量,则将在分配中使用旧值“a”。

    你答对了吗

    本期题目

    [073] 什么是内存泄漏?

    [074] 编译器和解释器的区别是什么?

    欢迎在留言区给出你的答案,正确答案将在下一期公布,或者到下面的文章获取答案

    面试攻略

  • 相关阅读:
    zlib 用了很多次,这次记下来
    boost 1.53 比1.52 ASIO bug 修正
    64位汇编
    js C++
    这个split 不错 我喜欢的
    布6月26日至28日将在旧金山召开2013年Build大会
    asio同步模式和异步模式
    vc6 编译boost
    windows 编译mongodb 2.4
    ajaxToolKit中 的折叠面板用法Accordion
  • 原文地址:https://www.cnblogs.com/icparadigm/p/14171938.html
Copyright © 2020-2023  润新知