c#基础语法汇总pdf

ads

2.1 C#基础语法

2.1.1 C#程序结构

在讲解 C# 的基本语法之前,让我们先来了解一下一个简单的 C# 程序是由哪些部分构成的

2.1.1.1 主体结构

一个 C# 程序主要包括以下几个部分:

  • 命名空间声明;
  • 一个类(class);
  • 类方法;
  • 类属性;
  • 一个 Main 方法;
  • 语句和表达式;
  • 注释。

比如:

using System;

namespace c.biancheng.net
{
    class Program
    {
        static void Main(string[] args)
        {
            /*第一个C#程序*/
            Console.WriteLine("Hello World!");
            Console.ReadKey();
        }
    }
}

这部分代码会在命令行窗口输出Hello World!

2.1.1.2 结构解读

对上述解读进行解读:1.using System;using 关键字用来在程序中引入 System 命名空间,一个程序中可以有多个 using 语句。2.namespace c.biancheng.netnamespace 关键字用来声明一个命名空间,“c.biancheng.net”则是命名空间的名字。命名空间是类的集合,上面代码中名为“c.biancheng.net”的命名空间中包含了一个名为“Program”的类。

  1. class Program

class 关键字用来定义一个类,“Program”则是类的名为,类中通常用来存放程序中要使用的数据和函数(也叫方法)。

  1. static void Main(string[] args)

此行代码中,Main 为定义的函数名称,Main 函数是整个 C# 程序的入口,其中包含了程序运行时需要执行的操作。static 和 void 都是用来修饰 Main 函数的关键字,具体含义后面我们会详细介绍。

  1. "/第一个C#程序 ***/"

这是程序的注释,当程序运行时被/* */包裹的内容将被编译器忽略,不会执行。注释主要用来对我们所写的代码进行说明。

  1. Console.WriteLine("Hello World!");

此行代码用来在命令行窗口中输出“Hello World!”。WriteLine 是 System 命名空间中定义的 Console 类里面的方法,用来输出一些消息。

  1. Console.ReadKey();

此行代码是针对 VS.NET 用户的,它会使程序进入等待状态,敲击键盘上的任意一个按键即可让程序继续运行。之所以需要这行代码,是因为命令行窗口会在程序运行结束后自动关闭,这会导致我们想要输出的内容一闪而过,加入此行代码则可以避免这种情况。 using 关键字用来在程序中引入 System 命名空间,一个程序中可以有多个 using 语句。 另外,还有以下几点需要注意:

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

2.1.1.3 编译执行程序

命令行来编译 C# 程序:

  • 新建一个文本文件,并在其中添加上面的代码;
  • 将文件保存为 helloworld.cs,注意文件得格式是.cs
  • 打开 CMD 命令行工具,然后转到 helloworld.cs 文件所在的目录;
  • 在命令行工具中输入~~csc helloworld.cs~~~~命令,然后按回车键进行编译; ~~(.NetSDK6/7已经弃用,请自行查询官网)
  • 如果代码中没有错误,那么则会在当前目录下生成一个名为 helloworld.exe 的可执行文件;
  • 在命令行工具中输入生成文件的名字 helloworld 或者 helloworld.exe 即可执行您的程序,当然也可以直接双击运行生成的 helloworld.exe 文件;
  • 此时您就可以在屏幕上看到输出的“Hello World!”了。

使用 Visual Studio 来编译和执行 C# 程序步骤:

  • 启动 Visual Studio;
  • 在菜单栏上依次选择“文件”->“新建”->“项目”;
  • 从模板中选择“控制台应用(.NET Code)”,然后点击“下一步”;
  • 为您的项目指定项目名称、位置、解决方案等信息,然后单击“创建”按钮;
  • 在代码编辑器中编写上面示例中的代码;
  • 单击运行按钮或按 F5 键即可执行项目中的代码,这时将会弹出一个命令行窗口,并在其中打印“Hello World!”。

注意: 在使用csc命令时提示“csc不是内部或外部命令...”,则说明需要将 .NET Framework 添加到环境变量中。具体操作步骤如下:

  • 右键“我的电脑”或者“此电脑”,在弹出的菜单中选择“属性”;
  • 在弹出的窗口中选择“高级系统设置”;
  • 选择“环境变量”;
  • 在弹出的窗口中找到系统变量,并选择其中的“Path”变量,然后点击“编辑”按钮或者双击来对“Path”变量进行编辑;
  • 将“C:WindowsMicrosoft.NETFrameworkv4.0.30319”添加到环境变量的最后,然后点击“确定”;(注意:所有打开的窗口都要点击一下“确定”按钮,否则可能添加失败。)

2.1.1 C#代码基本格式

编写C#程序时,代码需要放在一个类的内部,在定义类时需要使用关键字 class,格式如下:

[权限修饰符class 类名{
    程序代码
    }
  1. C#中代码分为:结构定义语句、功能执行语句

结构定义语句:声明一个类或者方法 功能执行语句:实现具体功能,每条功能执行语句必须要使用(**英文 ;**)结束

  1. C#需要严格区分大小写

比如:不能将关键字 class 写成 Class

  1. 代码书写通常会使用缩进格式,不是必须的,为了代码美观,便于阅读

2.1.2 C# 的注释

注释主要用于对程序中的某些代码进行解释说明,不会对注释进行编译 C# 中有3种注释:单行、多行、文档

  1. 单行注释 用于对程序的某一行进行解释,用符号:**//**

比如:

int a = 10 ; //这是定义一个整型变量
  1. 多行注释

注释多行内容,以符号 **/*开头*****/结尾**比如:

/* int a=10;
   int x=5; */

  1. 文档注释

用于对类或者方法进行描述说明,在类或方法前面连续输入 3个 **/**,就会自动生成文档注释,自己手动填写类或方法的描述信息。 比如:

///<summary>
///这是文档注释,添加方法
/// </summary>
static void Add(){

}

其他常用文档注释:、、、、、等等

2.1.3 C# 标识符

标识符是⽤来识别类、变量、函数或其它任何⽤户定义的项⽬。 在C#中,类的命名必须遵 循如下规则:

  1. 标识符必须有以字母、下划线或@开头,后⾯可以跟⼀系列的字母、数字、下划 线(_)、@符号。
  2. 标识符中的第⼀个字符不能是数字。
  3. 标识符必须不包含任何嵌⼊的空格或者符号,⽐如? - +! # % ^ & * ( ) [ ] { } . ; : " ' /  
  4. 标识符不能是C#关键字。除⾮它们有⼀个@前缀。⽐如@if是有效的标识符,但if 不是,因为if是关键字
  5. 标识符必须区分⼤⼩写,⼤写字母和⼩写字母被认为是不同的字母。
  6. 不能与C#的类库名称相同。

比如: 合法标识符:

username
username123
user_name
_userName

不合法标识符:

123user
class
if
99.99
Hello Wolrd

标识符命名除了要严格遵循以上规则外,为了代码可读性,可遵循以下规范:

  1. 大驼峰:类名、方法名、属性名中的每一个单词首字母都大写,比如:ArrayList、UserName、Sex、Age。
  2. 小驼峰:字段名、变量名的首字母小写,之后的每一个单词首字母都大写,比如:age、userName。
  3. 见名只意:看见命名就能很清楚知道代表的含义,比如:age代表年龄、userName代表用户名。
  4. 常量名的每一个首字母都大写,比如:MAX_DAY、USERNAME。

2.1.4 C#中的关键字

关键字是预定义的保留标识符,对编译器有特殊意义。 除⾮前⾯有 @ 前缀,否则不能在程 序中⽤作标识符。 例如,@if 是有效标识符,⽽ if 则不是,因为 if 是关键字。

在 C# 中,有些标识符在代码的上下文中有特殊的意义,如 get 和 set,这些被称为上下文关键字(contextual keywords)。

上下文关键字仅在⼀部分程序上下⽂中有特殊含义,可 以在相应上下⽂范围之外⽤作标识符。 ⼀般来说,C# 语⾔中新增的关键字会作为上下⽂关 键字添加,以免破坏⽤旧版语⾔编写的程序。

保留关键字





abstract as base bool break byte case
catch char checked class const continue decimal
default delegate do double else enum event
explicit extern false finally fixed float for
foreach goto if implicit in in (generic modifier) int
interface internal is lock long namespace new
null object operator out out (generic modifier) override params
private protected public readonly ref return sbyte
sealed short sizeof stackalloc static string struct
switch this throw true try typeof uint
ulong unchecked unsafe ushort using virtual void
volatile while




上下文关键字





add alias ascending descending dynamic from get
global group into join let orderby partial (type)
partial (method) remove select set


2.1.5 常量

常量是固定值,程序执行期间不会改变。常量可以是任何基本数据类型,比如整数常量、浮点常量、字符常量或者字符串常量,还有枚举常量。 常量可以被当作常规的变量,只是它们的值在定义后不能被修改。

  1. 整数常量

整数常量可以是十进制、八进制或十六进制的常量。前缀指定基数:0x 或 0X 表示十六进制,0 表示八进制,没有前缀则表示十进制。 整数常量也可以有后缀,可以是 U 和 L 的组合,其中,U 和 L 分别表示 unsigned (无符号)和 long(长整型)。后缀可以是大写或者小写,多个后缀以任意顺序进行组合。 这里有一些整数常量的实例:

 212         /* 合法 */
    215u        /* 合法 */
    0xFeeL      /* 合法 */
    078         /* 非法:8 不是一个八进制数字 */
    032UU       /* 非法:不能重复后缀 */

以下是各种类型的整数常量的实例:

 85         /* 十进制 */
    0213       /* 八进制 */
    0x4b       /* 十六进制 */
    30         /* int */
    30u        /* 无符号 int */
    30l        /* long */
    30ul       /* 无符号 long */
  1. 浮点常量

一个浮点常量是由整数部分、小数点、小数部分和指数部分组成。您可以使用小数形式或者指数形式来表示浮点常量。 这里有一些浮点常量的实例:

 3.14159       /* 合法 */
    314159E-5L    /* 合法 */
    510E          /* 非法:不完全指数 */
    210f          /* 非法:没有小数或指数 */
    .e55          /* 非法:缺少整数或小数 */

使用小数形式表示时,必须包含小数点、指数或同时包含两者。使用指数形式表示时,必须包含整数部分、小数部分或同时包含两者。有符号的指数是用 e 或 E 表示的。

  1. 字符常量

字符常量是括在单引号里,例如,'x',且可存储在一个简单的字符类型变量中。一个字符常量可以是一个普通字符(例如 'x')、一个转义序列(例如 't')或者一个通用字符(例如 'u02C0')。 在 C# 中有一些特定的字符,当它们的前面带有反斜杠时有特殊的意义,可用于表示换行符(n)或制表符 tab(t)。在这里,列出一些转义序列码:

转义序列 含义
字符
' ' 字符
" " 字符
? ? 字符
a Alert 或 bell
b 退格键(Backspace)
f 换页符(Form feed)
n 换行符(Newline)
r 回车
t 水平制表符 tab
v 垂直制表符 tab
ooo 一到三位的八进制数
xhh . . . 一个或多个数字的十六进制数

以下是一些转义序列字符的实例:

using System;
namespace EscapeChar{
    class Program{
        static void Main(string[] args){
            Console.WriteLine("HellotWorldnn");
            Console.ReadLine();
        }
    }
}

尝试一下 当上面的代码被编译和执行时,它会产生下列结果:

Hello   World
  1. 字符串常量

字符常量是括在双引号 "" 里,或者是括在 @"" 里。字符串常量包含的字符与字符常量相似,可以是:普通字符、转义序列和通用字符 使用字符串常量时,可以把一个很长的行拆成多个行,可以使用空格分隔各个部分。 这里是一些字符串常量的实例。下面所列的各种形式表示相同的字符串。

 "hello, dear"
    "hello, 
 dear"

    "hello, " "d" "ear"
    @"hello dear"
  1. 定义常量

常量是使用 const 关键字来定义的 。定义一个常量的语法如下:

const <data_type> <constant_name> = value;

下面的代码演示了如何在程序中定义和使用常量:

using System;

namespace DeclaringConstants{
    class Program{
        static void Main(string[] args){
            const double pi = 3.14159// 常量声明
            double r;
            Console.WriteLine("Enter Radius: ");
            r = Convert.ToDouble(Console.ReadLine());
            double areaCircle = pi * r * r;
            Console.WriteLine("Radius: {0}, Area: {1}", r, areaCircle);
            Console.ReadLine();
        }
    }
}

尝试一下 当上面的代码被编译和执行时,它会产生下列结果:

Enter Radius: 
3
Radius: 3, Area: 28.27431


最后编辑于:2024/1/16 拔丝英语网

admin-avatar

英语作文代写、国外视频下载

高质量学习资料分享

admin@buzzrecipe.com