Module: 子程序:过程和函数 - 1


Problem

8 /11


局部和全局变量

Theory Click to read/hide

局部和全局变量
通常需要使用仅在子程序中使用的附加变量。此类变量称为本地(或本地),只能在创建它们的子程序内进行操作。
 
Local variable scope 是声明它的花括号块。
C#中的主程序也是一个子程序,所以在void Main()中声明的所有变量都是局部变量。其他子程序对其他子程序的局部变量一无所知。

因此,可以将变量的作用域(scope)限制在真正需要它的子程序中。在编程中,这种技术被称为封装  - 隐藏变量以防止从外部更改它。

如果有必要声明一个在程序中任何地方(在任何子程序中)都可见的变量,则此类变量在所有子程序之外声明(参见下表中的程序 3)。
此类变量称为全局

在 C# 中,当程序启动时,所有全局变量都会自动设置为零(布尔变量取值 false)。

分析三个程序: <正文>

Problem

编写一个带有 n 参数的程序,输出树冠高度为 n 的圣诞树。 主程序必须包含 值的输入n 变量和过程调用。< br />  
例子
1) 在这个程序中,变量 i 是局部变量。局部变量在子程序中声明。 2) 这里即使主程序中有变量i(值为7),也会新建一个值为5的局部变量i。 
执行该程序时,屏幕上会出现值75。
3) 这个程序有一个全局变量 i。它的值可以在子程序内部和主程序内部更改。
该过程将使用全局变量 i 并将为其分配一个等于 2 的新值。显示值 2。
静态无效测试() {  诠释我= 5; Console.Write(“我”); } 静态无效测试() {  诠释我= 5;   Console.Write(“我”); } 静态无效主要() { 诠释我= 7;   Console.Write(“我”);  测试(); } 使用系统; 课程计划 { 诠释我; 静态无效测试() {  我 = 2; } 静态无效主要() { 测试(); Console.Write(“我”); } }
<头> <正文>
# 输入 输出
1 5 <前>     o    哦  呜呜呜  呜呜呜 呜呜呜