![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=1739333285-bUCz5rzSAU3HaDlV9xNg1JCmJgvJoCtg-0-f75607ab95bdc67db632e63a1e13a006)
2.2.1 标识符和关键字
标识符是程序员为类、方法、变量等选择的名字。下面按顺序列出了上述示例中的标识符:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0049-02.jpg?sign=1739333285-ssjVmhZ4s1EPrNG8vnt9IGDQTvvEgGrZ-0-81351d55dad6ccd7f91e37c0cde827d7)
标识符必须是一个完整的词,它由以字母和下划线开头的Unicode字符构成。C#标识符是区分大小写的,通常约定参数、局部变量以及私有字段应该以小写字母开头(例如myVariable),而其他类型的标识符则应该以大写字母开头(例如MyMethod)。
关键字是对编译器有特殊意义的名字。前面的示例中用到的两个关键字是using和int。
大部分关键字是保留字,这意味着它们不能用作标识符。以下列出了C#的所有关键字:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0049-03.jpg?sign=1739333285-6WOwzMbElYfys2PDmsHMbQzZtcfYbcVz-0-b79f310360779b33ed7d6cbb83d50bba)
如果希望用关键字作为标识符,需在关键字前面加上@前缀,例如:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0049-04.jpg?sign=1739333285-RMlpNyn2FpC4eCymuG9tazV2GJ9mEV8Y-0-d1ff1f8e24bd965cb0bcebb942b0aa4e)
@并不是标识符的一部分,所以@myVariable和myVariable是一样的。
上下文关键字
一些关键字是上下文相关的,它们有时不用添加@前缀也可以用作标识符,例如:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0049-05.jpg?sign=1739333285-s4V1i2iLF7UFg8byz5a93pqgluf1wibx-0-a838393f8196384d58c7df3823c03572)
使用上下文关键字作为标识符时,应避免与上下文中的关键字混淆。
2.2.2 字面量、标点与运算符
字面量在语法上是嵌入程序中的原始数据片段。上述示例中用到的字面量有12和30。
标点有助于划分程序结构,例如,分号用于结束一条语句。语句也可以放在多行中:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0050-01.jpg?sign=1739333285-u8m0pGBDSc91S1u0y9J1mNcxrykxY86t-0-e1e1801c9448fcc2a218c22f41cb526e)
运算符用于改变和组合表达式。大多数C#运算符都以符号表示,例如,乘法运算符*。我们将在本章后续内容中详细介绍运算符。在前文中出现的运算符有:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0050-02.jpg?sign=1739333285-aK31aJQBnvumpyiJ8cB7jFWDRGejNXD0-0-7c79343bd19d22891e42f4eb98fa7acf)
点号.表示某个对象的成员(或者数字字面量的小数点)。括号在声明或调用方法时使用,空括号在方法没有参数时使用,本章后续还会介绍括号的其他用途。等号=用于赋值操作,双等号==用于相等比较,请参见本章后续内容。
2.2.3 注释
C#提供了两种不同形式的源代码文档:单行注释和多行注释。单行注释由双斜线开始,到本行结束为止,例如:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0050-03.jpg?sign=1739333285-jj2GF7yNrYWOTwwJFOHmz7emmY7kSGxm-0-457ed308d1c20e1c72eafac9e6e6034c)
多行注释由/*开始,由*/结束,例如:
![](https://epubservercos.yuewen.com/77D764/31147986804769406/epubprivate/OEBPS/Images/0050-04.jpg?sign=1739333285-JpkoTvhnU3lw5TnK4YxUmSmwvVjG0kIB-0-5aa3dbdba947d2d5367f1ad4810426d9)
注释也可以嵌入XML文档标签中,我们将在4.20节中介绍。