Csharp 简明教程

C

变量不过是为我们程序可以操作的存储区域指定的名称。C# 中的每个变量都有一个特定的类型,它决定了该变量的内存大小和布局,该内存中可以存储的值范围,以及可以对该变量应用的操作集。

C# 中提供基本值类型可分为以下几大类:

Type

Example

Integral types

sbyte、byte、short、ushort、int、uint、long、ulong 和 char

Floating point types

float and double

Decimal types

decimal

Boolean types

true 或 false 值(已分配)

Nullable types

Nullable data types

C# 还允许定义其他变量值类型,如 enum ,以及变量引用类型,如 ,我们将在后续章节中予以介绍。

Defining Variables

C# 中的变量定义语法如下:

<data_type> <variable_list>;

此处,data_type 必须是有效的 C# 数据类型,包括 char、int、float、double 或任何用户定义的数据类型,而 variable_list 可能由一个或多个用逗号分隔的标识符名称组成。

这里显示了一些有效的变量定义:

int i, j, k;
char c, ch;
float f, salary;
double d;

您可以初始化变量,如下所示:

int i = 100;

Initializing Variables

变量用等号后跟一个常量表达式进行初始化(赋值)。初始化的一般形式为:

variable_name = value;

变量可以在其声明中初始化。初始化程序由等号后跟常量表达式组成,如下所示:

<data_type> <variable_name> = value;

一些示例:

int d = 3, f = 5;    /* initializing d and f. */
byte z = 22;         /* initializes z. */
double pi = 3.14159; /* declares an approximation of pi. */
char x = 'x';        /* the variable x has the value 'x'. */

最好对变量进行适当初始化,否则程序有时可能会产生意外结果。

以下示例使用各种类型的变量:

using System;

namespace VariableDefinition {
   class Program {
      static void Main(string[] args) {
         short a;
         int b ;
         double c;

         /* actual initialization */
         a = 10;
         b = 20;
         c = a + b;
         Console.WriteLine("a = {0}, b = {1}, c = {2}", a, b, c);
         Console.ReadLine();
      }
   }
}

编译并执行上述代码后,将产生以下结果 −

a = 10, b = 20, c = 30

Accepting Values from User

Console 类在 System 命名空间中提供了一个名为 ReadLine() 的函数,用于接受用户的输入并将其存储到一个变量中。

例如,

int num;
num = Convert.ToInt32(Console.ReadLine());

函数 Convert.ToInt32() 将用户输入的数据转换为 int 数据类型,因为 Console.ReadLine() 接受的格式为字符串。

Lvalue and Rvalue Expressions in C

C# 中有两种表达式:

  1. lvalue - 一个是 lvalue 的表达式可以出现在赋值运算的左边或右边。

  2. rvalue - 一个是 rvalue 的表达式只能出现在赋值运算的右边,不能出现在左边。

变量是 lvalue,因此它们可以出现在赋值运算的左边。数字文本是 rvalue,因此它们不能被赋值,不能出现在赋值运算的左边。以下是一个有效的 C# 语句:

int g = 20;

但是,以下不是有效的语句,将导致编译时错误:

10 = 20;