编译器在何时区分局部变量和全局变量 将代码转换为指令序列?
其次我正确地认为常量存储在 指令集和字符串通过指向常量块的指针存储 记忆?
答案 0 :(得分:1)
我相信您正在寻找的答案是编译器将局部变量范围限定为本地变量(例如,在函数中,函数中的变量将作用于函数;在类中,变量是范围到班级)。在全局变量的情况下,变量的范围是整个程序或系统,我已经看到这个术语使用了两种方式。
示例:
program P {
variable myGlobal
function F {
variable myFunction
}
}
在上面的例子中,myGlobal变量将作用于所有程序P,因此函数F将能够看到myGlobal。虽然myFunction只能在函数F中看到。
全局变量有时用于表示系统范围的变量(例如IP地址,操作系统版本......)。
范围是一个非常大的主题,您可能想查看有关该主题的维基百科条目:http://en.wikipedia.org/wiki/Scope_(computer_science)
这些也可能有所帮助:http://en.wikipedia.org/wiki/Global_variable和http://en.wikipedia.org/wiki/Local_variable