2023-01-04
自我提升
0

目录

一、编写第一个C#程序——Hello World
二、程序结构
三、代码分析

一、编写第一个C#程序——Hello World

  1. 启动Microsoft Visual Studio 2022。
  2. 点击“文件”菜单,选择“新建”项,在弹出的子菜单中选择“项目”命令。
  3. 弹出“新建项目”对话框。
  4. 在“最近的模板”下面点击“Visual C#”项,在中间的“模板”窗口中选择“控制台应用程序”项,在底部“名称”文本框中输入项目名称“Hello World”,点击“浏览”按钮,选择项目保存的位置“F:\VStudio2022\”。
  5. 点击“确定”按钮,弹出下面的“Hello World”窗口:
  6. 在static void Main(string[] args) 下面添加如下的代码(以“//”开头的是注释):
c#
// 第一个C#程序Hello World - // Console类位于System命名空间,表示控制台应用程序的标准输入流、输出流和错误流 // Console.WriteLine方法将指定的数据(后跟当前行终止符)写入标准输出流 // Console.ReadLine方法使程序暂停下来,直到按下回车键才会继续运行 Console.WriteLine("Hello World!"); Console.ReadLine();
  1. 添加好代码的窗口如下所示:
c#
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace HelloWorld { class Program { static void Main(string[] args) { // 第一个C#程序Hello World - // Console类位于System命名空间内,表示控制台应用程序的标准输入流、输出流 // 和错误流 // Console.WriteLine方法将指定的数据(后跟当前行终止符)写入标准输出流 // Console.ReadLine方法使程序暂停下来,直到按下回车键才会继续运行 Console.WriteLine("Hello World!"); Console.ReadLine(); } } }

s

注释可以省略!

  1. 选择“文件”菜单,点击“全部保存”命令,或者按下Ctrl+Shift+S快捷键,保存所有文件。
  2. 选择“调试”菜单,点击“启动调试”命令,或者按下F5键,运行程序。
  3. 运行结果如下:Hello World!
  4. 按下回车键(Enter),结束程序的运行。
    至此,第一个C#程序——Hello World编写成功!

二、程序结构

C#语言的程序结构包括程序、命名空间、类型、成员和程序集。

  1. 命名空间声明;
  2. 一个类(class);
  3. 类方法;
  4. 类属性;
  5. 一个 Main 方法;
  6. 语句和表达式;
  7. 注释。
  • 程序:C#程序包含一个或多个源文件。每一个C#程序由一个或多个类组成。所有的C#程序都必须封装在某个类中。
  • 命名空间:程序中声明的类型、类型中包含的成员都能够被组织到命名空间中。
  • 类型:类和接口是类型的例子。
  • 成员:字段、方法、属性和事件是成员的例子。
  • 程序集:程序集的文件扩展名一般是.exe(应用程序)或者.dll(类库)。当C#程序被编译时,它们会被打包到程序集中。

  • C# 区分大小写;
  • 所有语句和表达式都必须以英文的分号;结尾;
  • 程序从 Main 函数开始执行;
  • 程序文件名可以与类名不同;
  • 代码中出现的{和}都是成对出现的,用来标记代码块,{ }中包裹的代码可以看作是一个整体。

三、代码分析

  1. 导入命名空间
c#
using System; // 命名空间 using System.Collections.Generic; // 子命名空间 using System.Linq; // 子命名空间 using System.Text; // 子命名空间 上述代码使用using指令导入命名空间,以便使用类型而不用再指定命名空间。 编译器会在using指令指定的命名空间中查找没有在当前命名空间中定义,但是在代码中引用的类。 就是说,类必须位于命名空间中。要么它在导入的命名空间中;要么它在当前的命名空间中定义。 在Program.cs文件中使用using的原因是下面要使用一个库类System.Console。 using System指令允许把这个类简写为Console。 几乎所有的C#程序都使用System命名空间中的类,所以所有的代码文件都包含有using System;语句。
  1. 声明命名空间
c#
namespace HelloWorld { }

使用namespace关键字声明了一个命名空间范围。其后花括号中的所有代码都被认为是在这个命名空间中。

  1. 命名空间有两种,
  • 一种是系统命名空间,
  • 一种是用户自定义命名空间。

一个源程序文件中可以包含多个命名空间;
同一命名空间可以在多个源程序文件中定义。
命名空间可以嵌套。同一命名空间中不允许定义重名的类型(类或者方法等)。
同名的两个类如果在不同的命名空间中,相互之间是不会混淆的。

1)命名空间的引用:

c#
using 命名空间名称;一般写在源文件的最前面。

2)命名空间的声明:

c#
namespace 命名空间名称 { }

3)在程序中访问其它命名空间中的方法:

c#
<Namespace>[.<Subnamespace>].类型 例如: System.Console.WriteLine("Hello World"); 在这里,C#用点“.”操作符表示了语句的从属关系。 System:命名空间 Console:类 WriteLine:方法
  1. 声明类
c#
class Program { }

使用class关键字声明一个类,类的名称为Program。
因为该类位于HelloWorld命名空间中,所以该类的完整名称应该是HelloWorld.Program。
类的声明包括class关键字,后面是类名和一对花括号。与类相关的所有代码都应放在这对花括号中。

  1. 声明Main方法
c#
static void Main(string[] args) { // 应用程序功能代码实现位置 声明类的Main方法: static:返回值的类型。 void:返回值。 Main:方法名称。 string[] args:“Main”方法的参数。这是一个字符串数组。

相关信息

“Main”方法是每一个C#应用程序的入口,
C#要求每个程序必须且只能有一个“Main”方法,
“Main”方法必须放在任意一个类中。对于被调用的“Main”方法来说,它所在的类不需要被实例化。
如果有多个“Main”方法,编译器就会返回一个错误!

“Main”方法的声明与结构如下:

c#
方法一:不带参数,返回void static void Main() { // ... } 方法二:不带参数,返回int static int Main() { // ... return 0; } 方法三:带参数,返回void static void Main(string[] args) { // ... } 方法四:带参数,返回int static int Main(string[] args) { // ... return 0; }
  1. 语句代码
c#
Console.WriteLine("Hello World!"); Console.ReadLine();//上面的代码调用了System.Console类的WriteLine()方法和ReadLine()方法。

语句就是C#应用程序中执行操作的指令。C#中的语句必须用分号“;”结束。
可以在一行中书写多条语句,也可以将一条语句书写在多行上。

  1. 花括号语法
    在C#中,花括号“{”和“}”是一种范围标志,是组织代码的一种方式,用于标识应用程序中逻辑上有紧密联系的一段代码的开始与结束。
    花括号可以嵌套,以表示应用程序中的不同层次。

  2. C#注释

快捷键

注释ctrl+k ctrl+c
取消注释ctrl+k ctrl+u

C#注释分为两种:单行注释和多行注释。
1)单行注释
用两个正斜线来表示“//”:
// 右边的文字都是注释,直到一行结束。在“//”的后面不能使用反斜杠“\”。
2)多行注释
以“/”开始,以“/”结束:
/* 这是
多行
注释
......
/多行注释不能嵌套,即在分割符“/”和“*/”之间不能再有分割符。
3)文档注释
在Visual Studio的开发工具中,目前只有C#编译器能够将注释转换成XML文件。方法是使用“///”符号。只要加上这个注释符号和代表XML元素的标记,就可以将注释转换成XML文件。所以文档注释又可以称为XML注释。

c#
比如: using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace HelloWorld { /// <summary> /// 生成XML注释文件范例 /// </summary> class Program { /// <summary> /// Program类,打印Hello World! /// </summary> /// <param name="args">命令行参数</param> static void Main(string[] args) { // Console类位于System命名空间内,表示控制台应用程序的标准输入流、输出流 // 和错误流 // Console.WriteLine方法将指定的数据(后跟当前行终止符)写入标准输出流 // Console.ReadLine方法使程序暂停下来,直到按下回车键才会继续运行 Console.WriteLine("Hello World!"); Console.ReadLine(); } } }

注意:定义的XML元素一定要遵守XML的格式。如果编译成功,我们就可以找到HelloWorld.XML文件。

附:
在Visual Studio 设置生成XML注释文件的步骤:
以项目HelloWorld为例,点击“项目”菜单,选择“HelloWorld 属性”命令。
在左边点击“生成”项,在右边选择“XML文档文件”项即可。
XML文件名会自动填写,当然也可以自行修改。