首页 > 编程笔记 > C#笔记 阅读:55

C#变量的声明和初始化(非常详细)

变量关系到数据的存储,计算机使用内存来存储计算时所使用的数据,那么内存是如何存储数据的呢?

通过生活常识我们知道,数据是各式各样的,比如整数、小数、字符串等,在内存中存储这些数据时,首先需要根据数据的需求(即类型)为它申请一块合适的空间,然后在这个空间中存储相应的值。

实际上,内存就像一家宾馆,客人如果到一家宾馆住宿,首先需要开房间,然后入住,而在开房间时,客人需要选择是开单间、开双人间,还是开总统套房等,这其实就对应一个变量的数据类型选择问题。

在内存中为数据分配一定的空间之后,如果要使用定义的这个数据,由于内存中的数据是以二进制形式存储的,而这些二进制数据都对应相应的内存地址。因此,必须通过一个载体使用户能够方便地访问到二进制数据的内存地址,这个载体就是变量。

变量是什么

变量主要用来存储特定类型的数据,用户可以根据需要随时改变变量中所存储的数据值。

变量具有名称、类型和值:
在程序执行过程中,变量的值可以发生变化。使用变量之前必须先声明变量,即指定变量的类型和名称。

这里还以上面的客人入住宾馆为例,说明一个变量所需要的基本要素:
示意图如下图所示:


图 1 变量的基本要素

C#变量的声明

好比一个新生儿必须有一个名字一样,使用变量时,也需要先对变量进行命名,对变量命名的过程其实就是声明一个变量。

声明变量就是指定变量的名称和类型,变量的声明非常重要,未经声明的变量本身并不合法,也无法在程序中使用。在 C# 中,声明一个变量由一个类型和跟在后面的一个或多个变量名组成,多个变量之间用逗号分开,声明变量以分号结束,语法如下:
变量类型 变量名; // 声明一个变量
变量类型 变量名1, 变量名2, ... 变量名n; // 同时声明多个变量
例如,声明一个整型变量 mr,再同时声明 3 个字符串型变量 mr_1、mr_2 和 mr_3,代码如下:
// 声明一个变量
int mr; // 声明一个整型变量

// 同时声明多个变量
string mr_1, mr_2, mr_3; // 同时声明3个字符串型变量

变量的命名规则

在声明变量时,要注意变量的命名规则。C# 的变量名是一种标识符,应该符合标识符的命名规则。

另外,需要注意的一点是,C# 中的变量名是区分大小写的,比如 num 和 Num 是两个不同的变量,在程序中使用时是有区别的。

下面列出变量的命名规则:
例如,下面的变量名是正确的:

city
_money
money_1


下面的变量名是不正确的:

123
2word
int

在 C# 语言中,允许使用汉字或其他语言文字作为变量名,如“int 年龄=21”,在程序运行时并不会出现什么错误,但建议读者尽量不要使用这些语言文字作为变量名。

C#变量的初始化

在使用变量之前,必须进行声明并初始化。

变量的初始化实际上就是给变量赋值,以便在程序中使用。在 Visual Studio 2022 开发环境中运行下面一段代码:
static void Main(string[] args)
{
    string title;
    Console.WriteLine(title);
}
会出现如下图所示的错误提示:


图 2 变量未赋值时的错误提示

从图 2 可以看出,如果直接定义一个变量,就会提示使用了未赋值的变量,这说明:在程序中使用变量时,一定要对其进行赋值,也就是初始化,然后才可以使用。

那么如何对变量进行初始化呢?初始化变量有 3 种方法,分别是单独初始化变量、声明时初始化变量、同时初始化多个变量等,下面分别进行讲解。

1) 单独初始化变量

在 C# 中,使用赋值运算符“=”(等号)对变量进行初始化,即将等号右边的值赋给左边的变量。

例如,声明一个变量 sum,并初始化其默认值为 2023,代码如下:
int sum; // 声明一个变量
sum = 2023; // 使用赋值运算符 "=" 给变量赋值

在对变量进行初始化时,等号右边也可以是一个已经被赋值的变量。例如,首先声明两个变量 sum 和 num,然后将变量 sum 赋值为 2023,最后将变量 sum 赋值给变量 num,代码如下:
int sum, num;      // 声明两个变量
sum = 2023;        // 将变量sum初始化为2023
num = sum;         // 将变量sum赋值给变量num

2) 声明时初始化变量

声明变量时可以对变量进行初始化,即在每个变量名后面加上给变量赋初始值的指令。

例如,声明一个整型变量 mr,并且赋值为 927。然后同时声明 3 个字符串型变量并初始化,代码如下:
int mr = 927;                // 声明一个整型变量mr
// 初始化字符串型变量mr_1、mr_2和mr_3
string mr_1 = "零基础学", mr_2 = "项目入门", mr_3 = "实例精粹";

3) 同时初始化多个变量

在对多个同类型的变量赋同一个值时,为了节省代码的行数,可以同时对多个变量进行初始化。

例如,声明 5 个 int 类型的变量 a、b、c、d、e,然后将这 5 个变量都初始化为 0,代码如下:
int a, b, c, d, e;
a = b = c = d = e = 0;
上面讲解了初始化变量的 3 种方法,现在对前面开始出现错误的代码段进行修改,使其能够正常运行,修改后的代码如下:
static void Main(string[] args)
{
    // 第一种方法
    // string title="Hello, C#";
    // 第二种方法
    string title;
    title = "Hello, C#";
    Console.WriteLine(title);
}
再次运行程序,即可正常运行。

相关文章