![C# 10核心技术指南](https://wfqqreader-1252317822.image.myqcloud.com/cover/89/52513089/b_52513089.jpg)
2.2 语法
C#的语法基于C和C++语法。在本节中,我们将使用下面的程序介绍C#的语法元素:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0049-01.jpg?sign=1738866654-id12u6Gjr62RrVHbT9UBn6u82pOqr8gS-0-85a64e9f48f75f8d1732fdc329a2147c)
2.2.1 标识符和关键字
标识符是程序员为类、方法、变量等选择的名字。下面按顺序列出了上述示例中的标识符:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0049-02.jpg?sign=1738866654-JbY5lm8pdv64O1ds6jhQx4AtslThqTKP-0-2868c85b4be4a6928522c335ce6e260b)
标识符必须是一个完整的词,它由以字母和下划线开头的Unicode字符构成。C#标识符是区分大小写的,通常约定参数、局部变量以及私有字段应该以小写字母开头(例如myVariable),而其他类型的标识符则应该以大写字母开头(例如MyMethod)。
关键字是对编译器有特殊意义的名字。前面的示例中用到的两个关键字是using和int。
大部分关键字是保留字,这意味着它们不能用作标识符。以下列出了C#的所有关键字:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0049-03.jpg?sign=1738866654-RRUHAN6kapTQWbTi5BaWbF4jwmfp9jC6-0-7aaf0b6e72f382c59fc25dbfebe8d6da)
如果希望用关键字作为标识符,需在关键字前面加上@前缀,例如:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0049-04.jpg?sign=1738866654-MsamhZBSdm1TfKW4y5A5Bpjg7OqREKxh-0-3e1f2378e865f0c6171a54a1ed390e07)
@并不是标识符的一部分,所以@myVariable和myVariable是一样的。
上下文关键字
一些关键字是上下文相关的,它们有时不用添加@前缀也可以用作标识符,例如:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0049-05.jpg?sign=1738866654-23hSBKcp5OFRBkTGd2TwGGnObvE0zpTM-0-05342fa6d8d1b041784a071d2edddd43)
使用上下文关键字作为标识符时,应避免与上下文中的关键字混淆。
2.2.2 字面量、标点与运算符
字面量在语法上是嵌入程序中的原始数据片段。上述示例中用到的字面量有12和30。
标点有助于划分程序结构,例如,分号用于结束一条语句。语句也可以放在多行中:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0050-01.jpg?sign=1738866654-SdjH4I80wcA3F8CFqbsftnGa607PQhAH-0-bd6163733a217930bf6085bb902c6ad6)
运算符用于改变和组合表达式。大多数C#运算符都以符号表示,例如,乘法运算符*。我们将在本章后续内容中详细介绍运算符。在前文中出现的运算符有:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0050-02.jpg?sign=1738866654-JespKKzwoCQ3C3bikZQixa3qAx27tSzJ-0-c681864d6c48c2067f6c017fcce70643)
点号.表示某个对象的成员(或者数字字面量的小数点)。括号在声明或调用方法时使用,空括号在方法没有参数时使用,本章后续还会介绍括号的其他用途。等号=用于赋值操作,双等号==用于相等比较,请参见本章后续内容。
2.2.3 注释
C#提供了两种不同形式的源代码文档:单行注释和多行注释。单行注释由双斜线开始,到本行结束为止,例如:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0050-03.jpg?sign=1738866654-3glNMgxkol8BbgC9WS2uMagJGt90dqRx-0-a7d56847f11ce4c0dc015a8a0eeca3a7)
多行注释由/*开始,由*/结束,例如:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0050-04.jpg?sign=1738866654-7mBqYUhCQOc0sZ272GKusI8zKBPqA9sN-0-ced05c43b03c91882ec54da8d239c274)
注释也可以嵌入XML文档标签中,我们将在4.20节中介绍。