hchchc6016
2016-03-07 02:45
采纳率: 91.2%
浏览 3.0k
已采纳

内部变量和外部变量就是局部变量和全局变量吗?

局部变量和全局变量是从作用域分类的
外部变量就是前面加了extern,这个是从生存期定义的
这个两者应该不能混为一谈
为什么很多地方就默认为内部变量和外部变量就是局部变量和全局变量
这样子的话那么这句话怎么理解呢?图片说明

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • Crawl.W 2016-03-07 03:27
    已采纳

    首先把对应的外部和内部分别说成是全局和局部,这个内外表示的域(即{})的内外,而不是extern表示的文件的内外。不过确实很多的时候这样的表示由于没有统一的叫法,不同的作者有自己的叫法,常常让读书的人费解。你ppt截图那个应该说的局部变量和全局变量的区别,然后就是因为寄存器就那么几个基本都是用来存放临时的变量才可以用,想想如果你好几个全局变量一直放在寄存器一直占用着寄存器,也就放那么几个全局,并不能提高程序的效率啊。因为寄存器速度很快,高效的利用才能发挥其效率,而频繁的改变它里面的值才能发挥这种效率。
    另外,寄存器变量早就已经是毫无意义的东西了,基本都交给编译器去做了

    评论
    解决 无用
    打赏 举报
查看更多回答(2条)

相关推荐 更多相似问题