新闻  |   论坛  |   博客  |   在线研讨会
ABB 216NG63 静态变量只在函数或块中可见
15359029662 | 2023-03-20 18:33:06    阅读:98   发布文章

ABB 216NG63  静态变量只在函数或块中可见

  • 另一方面,在主()、其他功能或内部{ } 块分隔符局部变量。局部变量还包括形式参数变量。参数变量包含在函数定义的括号中。[13]他们提供了一个连接到函数。

    • 局部变量使用静电前缀也存储在全局和静态数据地区。[11]与全局变量不同,静态变量只在函数或块中可见。静态变量总是保留它们的值。函数就是一个例子int increment _ counter(){ static int counter = 0;counter++;返回计数器;}

  • 区域是位于顶部内存地址附近的连续内存块。[14]具有讽刺意味的是,放在堆栈中的变量是从上到下填充的。[14]A栈指示器是专用的注册跟踪最后一个被填充的内存地址。[14]变量通过汇编语言推送指令。因此,这些变量的地址是在运行时间。堆栈变量丢失其范围是通过弹出指令。

    • 局部变量声明时没有静电前缀,包括形参变量、[15]被称为自动变量[12]并存储在堆栈中。[11]它们在函数或块内部是可见的,在退出函数或块时会失去它们的作用域。

  • 许多区域位于堆栈下方。[11]它是从底部到顶部填充的。这操作系统使用管理堆堆指针和分配的存储块列表。[16]与堆栈一样,堆变量的地址也是在运行时设置的。一;一个被遗忘当堆指针和堆栈指针相遇时发生错误。

    • C提供了malloc()库函数来分配堆内存。[17]用数据填充堆是一个额外的复制功能。使用指针将存储在堆中的变量经济地传递给函数。如果没有指针,整个数据块就必须通过堆栈传递给函数


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客