C#的基本语法
在介绍基本语法之前我们先来大概讲一下创建好的这些文件都是做什么的
.sln文件:将项目和解决方案项结合到一起
.vs文件夹:用来存储当前解决方案中关于用户的设置和自定义项,比如断点,主题等。(一般都将其隐藏起来)
目录文件
项目目录:
bin文件夹:项目的开发文件,里面包含了Debug(调试)Release(发布)
obj文件夹:项目的配置项文件,里面包含了项目的页面配置信息
Properties:设置
.csproj:每个项目中都会包含一个MSBulid的项目文件,(c#中后缀是 .csproj Visual Basic 中后缀是 .vbproj数据库项目中后缀是 .dbproj)
App.config:当前项目配置项
Program.cs:入口文件(项目的入口)
以.cs后缀结尾的文件都是属于c#文件
csharp
// using 引入、导入 System系统模块
using System;
// System.Collections(集合).Generic(这是一个泛型类)支持对应的代码
// Linq:(Language intergrated query)语言集合查询,提示
// Text:文本程序集
// 组件工作队列
// namespace 命名空间,相当于在这一个空间内的代码都可以进行互相的"交流访问"
namespace _1_语法学习 {
// internal 修饰符
// class 类
// Program 文件名称,类名
// c#中的{} 用途主要是包裹一定量的代码,所以书写的时候需要注意。
internal class Program {
// static:静态修饰符
// void:属于方法返回类型的修饰
// Main:主函数,也叫做入口函数,程序只要启动必须要经过的函数
static void Main(string[] args) {
// 因为是控制台应用,所以可以使用Console对象的Write方法查看运行结果
Console.WriteLine("上午项目架构讲解"); //输出一行
Console.Write("进行到第二节课了"); //输出内容,不换行
Console.Write("正在继续");
//Console.ReadKey(); // 获取一个输入节点
// 描述了一个byte类型的变量,名字叫age,并赋值32
byte age = 32;
Console.WriteLine(age);
//Console.WriteLine("请输入你的姓名:");
// 会捕获当前控制台上的输入,然后返回出来
// string表示长串的char,所以叫做字符串,用来保存一段话
//string name = Console.ReadLine();
//Console.WriteLine(name);
// 浮点数三者的对比
// float 占了四个字节,后面必须要加F或者f
float f1 = 10.115555555f;
// 占8个字节,后面可以加D或d,也可以不加
double d1 = 10.115555555776;
// 不要求精度的时候使用float,一般精度使用double,高精度使用decimal
decimal d2 = 10.11555555555555555555m;
//字符内容
char c1 = 'B';
char c2 = '中';
char c3 = '1';
char c4 = ' ';
//不管数据类型是什么,只能代表单字符
// 字符串:特殊的引用类型,字符串赋值的时候是值类型的数据进行深拷贝
// 而引用类型一般都是浅拷贝
string str = "abc"; //表示输出一段内容
// \n 代表的是转移字符 相当于换行
string str2 = "n\nn";
Console.WriteLine(str2);
Console.ReadLine();
// c# 也提供一些功能性的工具类。例如 DateTime日期
DateTime now = DateTime.Now;
Console.WriteLine("现在的时间为:" + now);
//上述着一些变量描述的方式都属于常规变量的描述,特点是使用小驼峰的方式
// int intNumber, 从第二个单词开始,首字母大写
//如果是多个变量类型相同的时候,可以简写
int a = 20, b = 30, c = 40;
// 常量:一旦声明之后就不能再去修改了,名字要采用大驼峰的方式
const double PI = 3.1415926;
Console.WriteLine(PI);
//指针类型:一般都会以new开头,先分配内存,再去赋值
Object people = new Object();
}
}
}
常用快捷键
ctrl + k + d :快速对其代码
ctrl + k + c :注释代码
ctrl + k + u :取消注释代码
f1:查看帮助文档
C# 提供了三种注释方式
1.单行注释
csharp
// Console.WriteLine(我是单行注释);
2.多行注释
csharp
/*
* 我是多行注释1
* 我是多行注释2
* 我是多行注释3
* 我是多行注释4
*/
3.标注
csharp
#region 标注一般用于对一段代码进行解释说明
Console.WriteLine("这里是标注");
Console.WriteLine("region 开始标注");
Console.WriteLine("endregion 结束标注");
#endregion
C#语法中内置了数据类型,分为了三类
1.值类型(Value Type)
2.引用类型(Refercences types)
3.指针类型(Pointer)
数据类型的出现是为了让程序在存储数据的时候能够正确判断数据的特点,进行精准操作,
C#属于强类型语言,对数据类型有严格的要求
System.ValueType 值类型的派生类(所有的值类型都是从这个上面产生的)内存是系统分配好的
值类型
类型 | 描述 | 范围 | 默认值 |
---|---|---|---|
bool | 布尔值 | True 或 False | False |
byte | 8 位无符号整数 | 0 到 255 | 0 |
char | 16 位 Unicode 字符 | U +0000 到 U +ffff | '\0' |
decimal | 128 位精确的十进制值,具有 28~29 个有效位数 | (-7.9 x 1028 到 7.9 x 1028) 100 到 28 | 0.0M |
double | 64 位双精度浮点型 | (+/-)5.0 x 10-324 到 (+/-)1.7 x 10308 | 0.0D |
float | 32 位单精度浮点型 | -3.4 x 1038 到 + 3.4 x 1038 | 0.0F |
int | 32 位有符号整数类型 | -2,147,483,648 到 2,147,483,647 | 0 |
long | 64 位有符号整数类型 | -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 | 0L |
sbyte | 8 位有符号整数类型 | -128 到 127 | 0 |
short | 16 位有符号整数类型 | -32,768 到 32,767 | 0 |
uint | 32 位无符号整数类型 | 0 到 4,294,967,295 | 0 |
ulong | 64 位无符号整数类型 | 0 到 18,446,744,073,709,551,615 | 0 |
ushort | 16 位无符号整数类型 | 0 到 65,535 | 0 |
默认值
在声明变量时,必须要同时给定初始值,否则无法使用
可以使用 default 表示默认值
数字的默认值都是 0
布尔值的默认值是 false
字符和字符串都是空字符 '\0' ""
csharp
string x = default;
Console.WriteLine(x);
// 数字的值也有最大最小值概念
int max = int.MaxValue;
int min = int.MinValue;
Console.WriteLine(max); //2147483647
Console.WriteLine(min); //-2147483648