数据类型

sbyte x; //8bit,有符号,表示-128~127
bite x; //8bit,无符号,表示0~255
short x; //16bit,有符号整型
ushort x; //16bit,无符号整型
int x; //32bit,有符号整型
uint x; //32bit,无符号整型
long x; //64bit,有符号整型
ulong x; //64bit,无符号整型
float x; //32bit,浮点数
double x; //64bit,浮点数
decimal x; //128bit,精确浮点数
bool x; //8bit,只有true或false两种情况
char x; //16bit,字符类型
string x = “Hello”; //字符串
(string name,int age) = ("XiaoMing",24); //元组
var people = (Name:"Xiaoming",Age:24); //元组的另一种写法
string[] hi = {"Hi",“Hello”}; //声明数组并初始化
int[,] cells = new int[3,3]; //声明一个二维数组
cells = {
    {1,1,1},
    {2,2,2},
    {3,3,3}
}; //初始化一个二位数组
int[][] cells ={
    new int[]{1,1,1},
    new int[]{2,2}
};//交错数组 
System.Console.WriteLine(1.12345678999M); //将字面值指定为decimal类型
System.Console.WriteLine(1_23444_567); //C#7.0之后可以在数字见添加分隔符    

几点注意:

  • 在C#中short(ushort)是一种单独的数据类型,而在C语言中是short int的缩写。
  • 如过一个数用最简分数表示时,分母不是2的整数次幂,那么用float或double类型的标量来存储它时,会造成精度丢失。而decimal类型的变量嗯可以保证精度。此外,虽然decimal类型的变量有128bit,但是它的克表示范围没有float类型大。
  • c语言中的bool量的true或false可以用非零或零的数字来代替,C#不可以。
  • char类型的变量在C#有16bit,在C语言中有8bit。
  • string类型具有不可变性,要修改字符串,只能在其他内存位置新建字符串,然后重新赋值。
  • var是一种隐式类型。元组的写法还有很多,不再一一列举。
  • 多维数组维度要一致

盛夏的猫宁
23 声望2 粉丝