c#与c等基础部分的比较

来源:互联网 发布:好的代理软件 编辑:程序博客网 时间:2024/05/22 15:47

一、数据类型

①整型有:sbyte(8)、byte(8)、short(16)、usho(16)、int(32)、uint(32)、long(64)、ulong(64)。浮点数除float、doub(精度15到16位)外,还增加了decimal(精度为27到28位),常用于表示金钱。布尔型为bool,且只能赋为true或false,不能与整型数据相转换。

②引用类型:类、委托(代表)、接口、数组。

③变量和常量:常量只能为整型、浮点型、string型、字符型、布尔型,使用const声明。

④数据类型转换:隐式和显式转换都要求两种类型能相兼容。

⑤装箱与拆箱:值类型→引用类型——装箱,引用类型→值类型——拆箱。

二、运算符

+、-、*、/、%、>、<、>=、<=、==、!=、&&、||、!、?  :、is、as、位操作符、赋值及符合赋值运算符、new(用于创建对象、数组、代表)、typeof。

说明:&&、||执行的是短路与和或。字符串使用+表示连接。delegate类型使用+、-表示方法的合并和移除。枚举类型使用+、-表示对应数值的加减。字符串、枚举及delegate类型对比较运算符而言只能使用==和!=进行判断。e is T:e是否为T类型及其子类型,返回值为bool型。e as T:将e强制转换为T类型。typeof:获得系统原型对象的类型,返回值为Type类类型。

三、标识符及注释

标识符:由数字、字母和下划线组成,不能以数字开头,不能为关键字。

注释://单行注释;/*……*/多行注释;

///<sumary>

///常用于对方法的注释说明

///</sumary>

///<param>……</param>

#region……#endregion:指定可展开或折叠的代码块

四、流程控制语句

if……else:if子句和else子句都可再嵌套if……else子句。每个else与离它最近的if配对。

switch……case:用于对整型、字符、字符串、枚举型的相等判断。每个case后必须有break。但也允许多个case共用同一语句块。

while(条件){循环体}:先判断后执行,当型循环。

do{循环体}while(条件);:先执行后判断,直到型循环。

for(初始化;条件;循环修正):已知循环次数的情况,属while的变形,可与while相替换。

continue:跳过continue后的语句,继续执行下一次循环。

break:中断本层循环,用在switch中表示跳出switch。

foreach(类型  变量  in   数组或集合):用于对数组或集合进行遍历。

多种控制语句之间可以相互嵌套,如if中可嵌套while语句等。

五、编译预处理

#define 符号:符号定义语句,所定义符号的作用域是该定义所在的整个文件。

#undef 符号:符号定义取消语句。所定义符号的作用域是该定义所在的整个文件。

符号定义和取消必须放在所有其它语句的前面,或者说是放在所有“实代码”的前面。

条件编译格式(在程序中出现):

一条#if语句(必须有)

零或多条#elif语句

零或一条#else语句

一条#endif语句(必须有)

#if 符号:表示如果“符号”定义了就执行,可以使用与(&&)、或(||)、非(!)进行判断。例如:#if A 表示如果用#define A定义了符号A,则执行其中的代码。

#if A&&B 表示如果符号A和符号B都都定义了,则执行代码。

#elif 符号:“else if”

#warning 一句话:发出编译的警告信息。

#error 一句话:发出编译的错误信息。


0 0
原创粉丝点击