[C#基础1/21] C#概述

Notion原笔记

1. C# 简介


1.1 C# 定义


C# 在继承 C 和 C++ 强大功能的同时去掉了一些它们的复杂特性,使其成为 C 语言家族中的一种高效强大的编程语言

1.2 C# 用途


  • 用于捕获、分析和处理数据的业务应用程序
  • 可从 Web 浏览器访问的动态 Web 应用程序
  • 2D 和 3D 游戏
  • 金融和科研应用程序
  • 基于云的应用程序
  • 移动应用程序

1.3 C# 工作原理


1.3.1 什么是编程语言?


编程语言(例如 C#)可用于编写希望计算机执行的指令。每一种编程语言都有自己的语法。

编程语言的作用是让人们能以人类可读且可理解的方式表达意图。

用编程语言编写的指令称为"源代码",或简称为"代码"。

1.3.2 什么是编译?


称为编译器的特殊程序将源代码转换为**计算机中心处理单元 (CPU) **可执行的其他格式(机器码)。

为什么需要编译代码? 尽管大多数编程语言一开始似乎都比较难懂,但它们比计算机的首选语言更容易被人类理解。 CPU 理解通过打开或关闭数千个或数百万个小开关来表示的指令。 编译器通过将人类可读的指令转换为计算机可理解的指令集来连接这两个世界。

C# 的运行环境是 CLR,结合了编译器和解释器的特点,先将源码编译为中间语言IL,再动态运行,推荐书籍《CLR via C#》

2. 环境配置


此处使用的.net8 + vscode

2.1 下载安装 VS Code


VS Code官网

2.2 下载安装 .Net8


.Net官网

检验 .Net 是否安装成功:

示例

D:\>dotnet --version
8.0.204

2.3 安装 VS Code C# 扩展


2.3.1 修改 VS Code 扩展默认安装位置


  1. 先将扩展插件extensions从默认安装路径剪切到你真正想要存放的位置

C:\Users\(用户名)\.vscode\extensions\剪切到存放的位置,此处以D:\extensions为例

注意不要与 VS Code 安装目录放在一起,vscode 更新时会删除的

  1. 使用mklink命令创建快捷方式,使用\D参数创建软链接

    Microsoft Windows [版本 10.0.19044.1288]
    (c) Microsoft Corporation。保留所有权利。

    C:\Users\星痕Sky>mklink
    创建符号链接。

    MKLINK [[/D] | [/H] | [/J]] Link Target

         /D      创建目录符号链接。默认为文件
                 符号链接。
         /H      创建硬链接而非符号链接。
         /J      创建目录联接。
         Link    指定新的符号链接名称。
         Target  指定新链接引用的路径
                 (相对或绝对)。
    

    C:\Users\星痕Sky>

输入mklink /D "<原路径>" "<真正存放的路径>"

此处的例子就是:mklink /D "C:\Users\星痕Sky\.vscode\extensions" "D:\extensions"

看到创建成功的输出即可

2.3.2 安装 C# 扩展


需要安装的扩展如下

  • IntelliCode for C# Dev Kit(安装这个后下面几个也会自动安装)
  • C#
  • C# Dev Kit
  • .Net Install Tool

3. 第一行代码:Hello World


3.1 Hello World!


csharp 复制代码
Console.WriteLine("Hello World!");

输出

Hello World!

注意:C#是大小写敏感的,比如不要将Console错输成console了,单双引号不能混用

错误示例

csharp 复制代码
Console.WriteLine('Hello World!');

输出

(1,19): error CS1012: Too many characters in character literal

第 1 行的第 19 个字符指出了问题所在,后面是错误信息

3.2 Console.Write 和 Console.WriteLine


区别:
Console.WriteLine在末尾加了\n换行符
Console.Write却没有

相关推荐
Jasmine_llq41 分钟前
《 火星人 》
算法·青少年编程·c#
军训猫猫头3 小时前
20.抽卡只有金,带保底(WPF) C#
ui·c#·wpf
向宇it13 小时前
【从零开始入门unity游戏开发之——C#篇25】C#面向对象动态多态——virtual、override 和 base 关键字、抽象类和抽象方法
java·开发语言·unity·c#·游戏引擎
向宇it14 小时前
【从零开始入门unity游戏开发之——C#篇24】C#面向对象继承——万物之父(object)、装箱和拆箱、sealed 密封类
java·开发语言·unity·c#·游戏引擎
坐井观老天19 小时前
在C#中使用资源保存图像和文本和其他数据并在运行时加载
开发语言·c#
pchmi21 小时前
C# OpenCV机器视觉:模板匹配
opencv·c#·机器视觉
黄油饼卷咖喱鸡就味增汤拌孜然羊肉炒饭1 天前
C#都可以找哪些工作?
开发语言·c#
boligongzhu1 天前
Dalsa线阵CCD相机使用开发手册
c#
向宇it2 天前
【从零开始入门unity游戏开发之——C#篇23】C#面向对象继承——`as`类型转化和`is`类型检查、向上转型和向下转型、里氏替换原则(LSP)
java·开发语言·unity·c#·游戏引擎·里氏替换原则