- 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位数 -座机电话号码48~座机电话号码47 uint 无符号32位数 0~座机电话号码95 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)枚举类型是这样一种数据类型:系统把相同类型、表达固定含义的一组数据作为一个集合放到一起形成新的数据类型。比如一个星期的七天可以放到一起作为新的数据类型来描述星期类型,这时,星期一到星期日的集合就构成了一个枚举类型,它们都是枚举类型的组成元素。枚举的实质是为一组在逻辑上密不可分的整数值提供便于记忆的符号。例如:
enum WeekDaysSun,Mon,Tue,Wed,Thu,Fri,Sat;这个数据类型表示了一个星期内七天的枚举,其中Sun的值为0,Sat的值为6。用户
您可能关注的文档
- 第2章光现象..doc
- 第2章农业推广框架模型与沟通..doc
- 第2章国际贸易均衡分析..docx
- 第2章基因..doc
- 第2章基本初等函数导数及其应用第11讲..doc
- 第2章实验1译码器..doc
- 第2章实验2数据选择器..doc
- 第2章实验一关于多项式的MATLAB命令..doc
- 第2章废水生物脱氮技术..doc
- 第2章建筑电气的电工技术基础..doc
- Brunnstrom恢复阶段期的康复训练.pptx
- 医药区域市场开发与营销队伍管理.pptx
- JCT2419-2017 光参量振荡用磷酸氧钛钾晶体.docx
- 二年级下册数学同步教案 7.3.2用估算解决问题例13.P96页 人教版.docx
- 人教版六年级语文下册集体备课教案 3 P10.docx
- 一年级上册美术教案-第2课 新朋友丨浙美版(2012).docx
- 四年级主题班会教案-弘扬社会主义核心价值观,争做新时代好队员 全国通用.docx
- 四年级主题班会教案-今天我们这样学雷锋 全国通用.docx
- 统编版小学语文四年级下册22墨梅教案2023.docx
- 统编版小学语文六年级下册2 腊八粥教案.docx
文档评论(0)