C#语言简介
1. C#和C++的区别
◇C#不支持多重继承,这是与C++明显区别的地方;
◇在标准的C#安全代码中不支持指针类型的操作;
◇C#中所有对象都只能通过关键词“new”来创建;
◇数组变为了类,因此对于数组里的元素,.NET Framework直接提供了一系列的操作:查找、排序、导致;
◇C#会禁止所有switch…case语句失败情形,除非case语句后是空格,否则执行了前一个case语句,结算没有break也会停止执行后面的case语句;
◇C++的宏在C#中被抛弃了很多,不建议使用;
◇C++的模板在C#里没有了,但在C#中我们找到了能完成模板任务的更锋利武器:委托;
◇C++的全局变量这一概念没有了,C#和JAVA类似,要把所有东西都放在类里面,还建议使用命名空间包含起来。
2.C#语言的特点
◇语言简洁;
◇保留了C++的强大功能;
◇快速应用开发功能;
◇语言的自由性;
◇强大的Web服务器控件;
◇支持跨平台;
◇与XML相融合;
3. 基本数类型
类型 | 说明 |
---|---|
整型 sbyte | 8位有符号整数/1字节 |
整型 short | 16位有符号整数/2字节 |
整型 int | 32位有符号整数/4字节 |
整型 long | 64位有符号整数/8字节 |
整型 byte | 8位无符号整数/1字节 |
整型 ushort | 16位无符号整数/2字节 |
整型 uint | 32位无符号整数/4字节 |
整型 ulong | 64位无符号整数/8字节 |
浮点型 float | 32位单精度/4字节 |
浮点型 double | 64位双精度浮点数/8字节 |
浮点型 decimal | 128位精确浮点数/16字节 |
字符型 char | 16位Unicode字符/2字节 |
布尔型 bool | 表示true或false/1字节 |
日期时间 datetime | |
结构体 struct | |
枚举类型 enum | |
类 class |
例:
double b = 3.14;
float f = 3.14f;
decimal d = 3.14m;
4. 混合运算
转换方式:自动转换和强制转换
自动转换:
◇float->double(必须转换);
◇char->short->int(必须转换);
◇int->long->double(按需转换,由左向右);
自动转换只是针对一个运算符俩侧的运算对象
强制转换:
◇用 ()
int i;
float f = 12.3f;
i = (int)f;
◇用 convert
int i;
float f = 12.3f;
i = convert.ToInt32(