注册 登录

清河洛

C#的文件结构和编译运行

qingheluo2021-08-22清河洛512
C#的运行环境1、安装microsoft.net framework 并把安装目录(一般为"C:\Windows\Microsoft.NET")添加到环境变量 后面需要使用csc命令来编译C#文件 2、安装.NET SDK,下载网址:https://dotnet.microsoft.com/download一个简单的C#文件结构using System; namespace MyFirst{ class HelloWorld{ static void Main(string[] args){ Console.WriteLine...

C#的运行环境

1、安装microsoft.net framework

    并把安装目录(一般为"C:\Windows\Microsoft.NET")添加到环境变量
    后面需要使用csc命令来编译C#文件

2、安装.NET SDK,下载网址:https://dotnet.microsoft.com/download

一个简单的C#文件结构

using System;
namespace MyFirst{
    class HelloWorld{
        static void Main(string[] args){
            Console.WriteLine("Hello World!");
            Console.ReadKey();
        }
    }
}

1、用于包含命名空间的语句(using System),可以同时有多个using语句
2、声明本文件的命名空间(namespace MyFirst)
3、声明一个chass类(class HelloWorld)
4、定义一个Main方法,Main方法是所有C#程序的入口点
5、定义具体的行为
    WriteLine是一个定义在System命名空间中的Console类的一个方法,用于在屏幕上显示信息
    Console.ReadKey()使得程序会等待一个按键的动作,防止程序运行完毕后自动关闭而看不到信息
6、C#中单行注释为双斜杠"//",多行注释为"/*....*/"

C#文件的运行

1、将C#代码保存文后缀名为".cs"的文件
2、打开cmd程序并定位到文件所在目录
3、输入"csc file.cs"命令来编译代码
4、编译完成后会生成一个同名但后缀名为".exe"的文件
5、直接双击exe文件即可运行

配置编辑器编译器

以sublime为例,打开菜单工具->编译系统->新建编译系统,写入:

{
    "working_dir":"$file_path",
    "encoding":"gbk",
    "cmd": "cmd /k del /q $file_base_name.exe 2>nul & csc $file_name >nul & if exist $file_base_name.exe (start $file_base_name.exe & exit) else (csc $file_name & exit)",
}
    working_dir,在运行cmd前会切换到该目录,运行结束后会切换到原来的目录
    cmd,包括命令及其参数
    encoding,输出cmd的编码
保存为"C#.sublime-build"文件名即可

C#中的标识符命名要求

标识符是用来识别类、变量、函数或任何其它用户定义的项目

1、标识符必须以字母、下划线或@开头,后面可以跟字母、数字、下划线、@
2、标识符不能包含空格
3、标识符不能包含一些特殊符号,如"? - +! # % ^ & * ( ) [ ] { } . ; : " ‘ / "
4、标识符不能是C#关键字
5、标识符区分大小写
6、不能与C#的类库名称相同

C#中的保留关键字

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           int         interface
internal   is         lock         long        namespace
new        null       object       operator    out
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     remove
select     set


网址导航