美文网首页
函数和内存区域分类

函数和内存区域分类

作者: 长欢姑娘 | 来源:发表于2019-04-19 21:44 被阅读0次
函数

1、函数是具有一定功能的一个程序块,是C语言的基本组成单位。

2、函数不可以嵌套定义。但是可以嵌套调用。

3、函数名缺省返回值类型,默认为 int。

ps:C/C++都是如此。默认为int。注意不是void

4、C语言由函数组成,但有且仅有一个main函数。

5、读程序都要从main()入口,然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择)。

内存可以分为哪几个区域?

1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。

2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由os回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表。在程序的运行期间也是唯一可能造成内存泄漏的区域(例如:循环new出来的对象取总是没有被delete释放掉)。

ps:new与delete是C++的运算符。

3、全局区(静态区)(static)—全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域, 未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。程序结束后由系统释放。

4、文字常量区 —常量字符串就是放在这里的。 程序结束后由系统释放。

5、程序代码区—存放函数体的二进制代码。

相关文章

  • 函数和内存区域分类

    函数 1、函数是具有一定功能的一个程序块,是C语言的基本组成单位。 2、函数不可以嵌套定义。但是可以嵌套调用。 3...

  • C语言之函数指针

    函数指针的定义 一个函数总是占用一段连续的内存区域,函数名在表达式中有时也会被转换为该函数所在内存区域的首地址,与...

  • 理解Java内存区域与垃圾收集器

    本文主要介绍java内存区域和GC回收 java内存区域 垃圾收集器 参考 java内存区域 运行时内存区域 ja...

  • 内存

    内存的几大区域 栈内存和堆内存 所谓的栈内存和堆内存并不是内存里面有一块区域叫栈,有一块区域叫堆.所谓的栈内存和对...

  • Swift 中的内存安全性

    内存安全 inout 参数访问冲突 在函数体内,同时读、写 stepSize 这块内存区域。 inout 参数访问...

  • JS对象分类

    分类原因:分类就可以少占内存 new语法 将函数与原型结合 函数的特征 都有prototype属性,存储原型地址 ...

  • 智能指针

    内存类型分类 1 静态内存 静态内存用来保存局部static对象,类static数据成员,以及定义在任何函数之外的...

  • 1.C++程序设计——函数指针

    基本概念 程序运行期间,每个函数都会占用一段连续的内存空间 函数名就是该函数所占内存区域的起始地址(入口地址) 可...

  • malloc(), calloc()和realloc()

    C 标准库提供下面四个函数进行内存管理: malloc(), calloc() 用来分配新的内存区域 reallo...

  • js中的this指向

    代码执行上下文 执行上下文其实是一段内存区域,具体是指方法区的栈内存的一段区域,每次执行函数的时候,会有一块内存区...

网友评论

      本文标题:函数和内存区域分类

      本文链接:https://www.haomeiwen.com/subject/myjqgqtx.html