C语言面试考点之二

Posted Overboom

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言面试考点之二相关的知识,希望对你有一定的参考价值。

  1. 全局变量和局部变量在内存中是否有区别?如果有,是什么区别?
   	全局变量储存在静态数据库,局部变量在堆栈
  1. 堆栈溢出一般是由什么原因导致的?
      没有回收垃圾资源
  1. 局部变量能否和全局变量重名?
      能,局部会屏蔽全局。
      在函数内引用这个变量时,会用到同名的局部变量,而不会用到全局变量。
      对于有些编译器而言,在同一个函数内可以定义多个同名的局部变量,
      比如在两个循环体内都定义一个同名的局部变量,而那个局部变量的作用域就在那个循环体内
  1. 如何引用一个已经定义过的全局变量?
      extern 关键字
  1. 全局变量可不可以定义在可被多个.C文件包含的头文件中?为什么?
      可以,在不同的C文件中以static形式来声明同名全局变量。
      可以在不同的C文件中声明同名的全局变量,前提是其中只能有一个C文件中对此变量赋初值,此时连接不会出错

以上是关于C语言面试考点之二的主要内容,如果未能解决你的问题,请参考以下文章

C语言面试考点之一(常见关键字)

C语言面试考点之一(常见关键字)

面试必看:java面试考点干货精讲视频教程

C/C++面向对象基础知识面试易考点

C/C++面向对象基础知识面试易考点

直击网申系列直播:数据结构高频考点之二叉树二分搜索树二叉堆