您的位置:首页 > 编程语言 > C#

C#中需要注意到的点

2015-11-04 17:22 302 查看
C#相比于C++更像Java

1.bool 与C++不同,与0与非0无关,只有true和false两个值

2.char 编码为unicode(占用双字节),直接支持包括中文在内的多国语言

byte 0~255,sbyte 才是-128~127

3.decimal 一般用于财务,为了减少计算导致的精度误差而产生

4.C#与Java一样,没有指针,但是也有值类型和引用类型。类是引用类型,而一般的数据类型和结构体都是值类型

5.Object类是所有类的基类

6.string类,System.String一般用于字符处理

字符串中可以使用转义字符,与C++一致,但是如果在字符串的值前加@则表示不用转义字符。

比如以下两条是等价的:string str = "c:\\a.txt";

string str = @"c:\a.txt";

如果字符串这样定义,string str = "hello";那么这个str就是常量,是不能修改的。要修改需要这样string str = String.empty()

7.C#的控制台类Console读入的全是字符串,显示的也全是字符串。

8.C#的内存控制类似于Java,自动销毁不用的内存空间

9.作用域开始于变量初始化,而不是变量定义,这一点与Java、C++都不同。接下来举例说明

int a;

for (int i = 0;i < 100;i ++){

a = i;

Console.WriteLine(a);

这样会报错,因为a的作用域在for循环中。所以在C#中变量初始化变得尤其重要。

10.C#标识符第一个字符可以是@

微软建议对简单变量使用camelCase的命名规则,对于比较高级的命名规则则使用PascalCase规则。

11.C#可以对实数进行%运算

12.枚举类型必须加上枚举的变量名,比如:sex = Sex.Male;

13.A&&B 若A为false,则不运算B,直接返回false

A&B 无论A和B是什么结果,都会运算A和B

14.格式化输出:Console.WriteLine("a={0},b={1},c={2}",a,b,c);C#使用占位符将变量替换进字符串,类似于Linux的Shell脚本

15.Convert类,用于类型转换。常用方法有:

ToByte()、ToDecimal()、ToInt32()(对应int型)、ToInt64()(对应Long)、ToDateTime()等

16.主函数,举例的是其中一个重载:

static void Main(string[] args){

}

注意Main是大写的M开头

17.可以使用checked和unchecked关键字决定是否检测有溢出
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: