- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章数据类型运算符和表达式C
第2章 数据类型、运算符和表达式
本 章 要 点
值类型和引用类型数据的使用
值类型和引用类型数据的区别
变量的种类及使用方法
运算符的优先级
2.1 数据类型
C#的数据类型可以分为值类型、引用类型和指针类型三类。在C和C++语言中,指针是一个非常重要的概念。C# 只有在“不安全代码(Unsafe Code)”中才可以直接使用指针,在其他地方几乎不用。C#能够在自身已有数据类型的基础上创建新的数据类型。
2.1.1 值类型
值类型(Value Types)最大的特点是由于值类型变量中都直接存储了自己的数据,对值类型变量的操作就是直接修改变量中存储的数据,而且对于某个变量的操作不会影响其他变量的值。
1、 简单类型(simple type)
简单类型包含整数类型、字符类型、浮点类型、小数类型和布尔类型。
(1)整数类型
整数类型是C#中数值类型的一种,它包含了9种不同的数据类型,
如表2-1 所示。
数据类型 特征 取值范围 sbyte 有符号8位数 -128~127 byte 无符号8位数 0~255 short 有符号16位数 -32768~32767 ushort 无符号16位数 0~65535 int 有符号32位数 -2147483648~2147483647 uint 无符号32位数 0~4294967295 long 有符号64位数 -263~263-1 ulong 无符号64位数 0~264-1 Char 16位字符 0~65535 (2)字符型
字符型指的是统一字符编码标准下的字符(unicode character)。由这种字符编码标准指定的字符集几乎涵盖了当今世界上所有的文字。字符型的长度是16位,远远大于其他程序语言中的字符长度(8位)。字符型的常量在使用时必须加上单引号。如:
char c=‘A’;
另外,可以直接通过十六进制转义符(前缀\x)或Unicode表示法(前缀\u)来使用字符类型的数据。如:
char c=‘\x0032’;
char c=‘\u0032’;
C#中使用的转义符在程序中指代特殊的控制符,如表2-2所示。
表2-2 C#的转义符
转义符 字符名 \’ 单引号 \” 双引号 \\ 反斜杠 \0 空字符 \a 警报 \b 退格 \f 换页 \n 新行 \r 回车 \t 水平Tab \v 垂直tab (3)浮点型
浮点型数据又称为实数,C#中的浮点型包含单精度浮点型(float)和双精度浮点型(double)两种。
单精度:取值范围为±1.5×10-45~3.4×1038之间,精度为7位数。
双精度:取值范围为±5.0×10-324~1.7×10308之间,精度为15到16位数。
对于浮点型数据,需要注意以下一些问题:
存在正0或负0,运算结果在精度范围内小到一定程度,系统就会当0值处理。
存在正无穷大(+∞)和负无穷大(-∞),一般产生在除数为0的情况下,比如:100.2/0.0或者-100.2/0.0。
存在非数字值(Not-a-Number,简称NaN)。当出现0.0/0.0这种非法运算的时候就会出现非数字值。
(4)十进制类型
十进制类型也可以称为小数类型,它是128位高精度的数据类型,取值范围为1.0×10-28~7.9×1028之间。C#的十进制类型具有相当高的精确性,使得它能够适应财政和货币等数值很大、对数字要求精度比较严格的领域。十进制类型数据的范围远远小于浮点型,不过它的精确度比浮点型高得多。所以相同的数字对于两种类型来说可能表达的内容并不相同。对于十进制类型的数据,要在数据的后面加上“m”来表示它是decimal类型的,如0.25m、183m等。
十进制类型的数据的值都是确定的,不允许出现非数字值(NaN),也不支持正负0和无穷(无穷大和无穷小)的概念。如果decimal指定的数值特别小,该数就被认为是0;如果数值特别大,那么系统就会提示溢出错误。
(5)布尔类型
布尔类型的数据只含有两个数值:true和false,即变量为真或者为假。
在布尔类型和其他类型之间不存在任何标准转换。值得注意的是,布尔类型与整数类型完全不同,布尔值不能用在需要整数值的地方,反之亦然。
2、枚举类型(enum types)
枚举类型是这样一种数据类型:系统把相同类型、表达固定含义的一组数据作为一个集合放到一起形成新的数据类型。比如一个星期的七天可以放到一起作为新的数据类型来描述星期类型,这时,星期一到星期日的集合就构
您可能关注的文档
- 现代社交礼仪复习资料.doc
- 现代科技专题10.doc
- 现代简约风格咖啡厅装修知识大全doc.doc
- 现代管理基础知识期末考试(商务1401).doc
- 通信自由权第一案的意义.doc
- 电商ERP简易操作流程.doc
- 现代花园三期施工组织设计123.doc
- 现代远程教育入学指南在线考试(答案).doc
- 现代装饰画搭配技巧大全.doc
- 现场5s管理先进班组.doc
- CNAS-CL63-2017 司法鉴定-法庭科学机构能力认可准则在声像资料鉴定领域的应用说明.docx
- 12J7-3 河北《内装修-吊顶》.docx
- 12N2 河北省12系列建筑标准设计图集 燃气(油)供热锅炉房工程.docx
- 内蒙古 12S8 排水工程 DBJ03-22-2014.docx
- 山西省 12S10 12系列建筑标准设计 管道支架、吊架.docx
- 16J601-木门窗标准图集.docx
- 12J8 河北省12系列《 楼梯》.docx
- CNAS-GL37 2015 校准和测量能力(CMC)表示指南.docx
- CNAS-RL02-2016 能力验证规则.docx
- 津02SJ601 PVC塑料门窗标准.docx
文档评论(0)