C#学习入门
使用 Visual Studio 进行开发
注释
单行注释://
多行注释:/* */
三杠注释:///
折叠代码
#region MyRegion
Console.WriteLine("Hello, World!");
#endregion这样在行号那里会显示一个箭头,点击就可以折叠代码
变量
变量一共有14种类型:
在类型前面加上u 就是无符号的整形变量,就是说只有正数没有负数
sizeof() 可以返回变量占用内存的大小
声明常量:
const int = 1;常量必须要被初始化,否则会报错
转义字符
\字符这样就可以转义
换行:
\n如果想输出斜杠:
\\\t 可以空四个格
\b 是光标退格,会把光标退到上一个字符覆盖,所以输入123\b123 输出的是12123
\0 是空字符,没有用
\a 是警报音,会在系统想起一个警报的音效
取消转义字符:
const string = @"哈哈\哈哈";隐式转换
小范围可以赋值给大范围自动转换成大范围的类型,反之则不行。
decimal比较特殊,无法通过隐式转换的方式去存储double和float
无符号的不能装有符号的
字符串复制给数字字面量的会变成ASCLL码
在输出中如果括号里面有字符串那么变量相加就是字符串拼接,如果没有就是数字相加
显式转换
short s = 1;
int i = 1;
s = (short)i;
Console.WriteLine(s);变量类型.parse() 可以把字符串类型转为对应的类型
Convert 也可以转
int a = Convert.ToInt32("123");Convert 的精度比括号转好一些,会四舍五入

变量.toString() 可以把变量转成字符型

可以用char把数字ASCLL转换成文字,这里输出的就是"帅"字
异常捕获
try
{
}
catch
{
}
finally
{
}我们可以在catch后面加上一个括号写上Exception e 这个e 就包含了错误信息
using System;
class Program
{
static void Main()
{
start:
Console.WriteLine("请输入一个数字:");
try
{
int num = int.Parse(Console.ReadLine());
Console.WriteLine($"你输入的数字是:{num}");
}
catch (FormatException)
{
Console.WriteLine("输入格式错误,请重新输入!");
goto start; // 跳回去重新执行
}
Console.WriteLine("程序结束。");
}
}字符串拼接
Console.WriteLine(string.Format("Hello, {0}!, My name is {1}", "World", "Water"));输出:
Hello, World!, My name is Water
位运算符
int a = 1;
int b = 5;
int c = a & b;
Console.WriteLine(c);& 运算符采用对位运算。1的二进制是001,5的二进制是101,将他们进行对位运算,只有两个都是1才为1
所以最后的结果为1
如果说&是有0则0,那么|就是有1则1
^ 在对位运算中,相同为0,不同则为1
~ 是取反位运算符。
int a = 5;
int b = ~a;
Console.WriteLine(b);这段代码的结果会是-6。因为这里的a是用int声明的,在二进制中表示就是:0000 0000 0000 0000 0000 0000 0000 0101 ,取反后就会变成:1111 1111 1111 1111 1111 1111 1111 1010
+5
原码:
00000101反码:
00000101(正数反码同原码)补码:
00000101(正数补码同原码)
-5
原码:
10000101反码:
11111010(符号位不变,其余取反)补码:
11111011(反码 + 1)
<< >> 分别是左移和右移
左移5位,就在后面加5个0,右移就是减去几个0
Switch

do while
