2.2 基本类型
本章接下来的三节将介绍大多数语言都有的一些性质:变量和数据类型、操作符、表达式,以及控制操作流程的语句。首先讨论基本类型(primitives)。顾名思义,基本类型就是核心C#数据类型,它们可以作为构建模块(就像是“积木”)用来建立更为复杂的类和结构类型。基本类型的变量只有一个值,而且大小总相同,即预定义的大小。表2ˉ3列出了这些基本类型、相应的核心数据类型,以及类型的大小。
表2ˉ3 C#基本数据类型
如表所示,基本类型直接映射到基类库中的类型,二者可互换。请看以下语句:
它们都生成完全相同的中间语言(IL)代码。其中第二条语句比较短,用到了C#提供的关键字int,这是System.Int32类型的别名。C#对所有基本类型都提供了别名。使用基本类型时,要注意以下事项:
标识值类型基本类型的关键字(如int)实际上是一个底层结构(C#中的struct类型)的别名。可以用这些结构的特殊成员来处理基本类型。例如,Int32结构有一个字段,可以返回最大的32位整数,还有一个能将数字字符串转换为整型值的方法:
只要转换是“安全的”,且不会导致数据丢失,C#编译器就支持隐式转换。只有在转换目标比转换源(所转换的对象)的精度更高的情况下才会进行隐式转换,这称为宽化转换(widening conversion)。对于窄化转换(narrowing conversion),即转换目标的精度较低,则必须显式地强制转(Casting)。强制类型转换用于将一种类型的值强制转换为另一种类型。其语法是将目标数据类型放在括号里,并置于要转换的值前面:int i=(int)y;
赋给float、double和decimal类型的直接量值必须在最后带一个字母:如果是float,就要带F或f;double带D或d(这是可选的);decimal则需要M或m。
本节后续内容将概要介绍一些最有用的基本类型,不过string会在以后再做讨论。
| 回书目 上一节 下一节 |
|
· 第六章 你能帮我吗?.. · Linux笔试面试题选摘测.. · 08年5月软考网管上午真.. · 性能测试从零开始 目录 · 08年5月软考网工上午真.. · 上周拒绝服务攻击(DDo.. |
· 08年5月各大网上书店及.. · 2008年5月24日软考试题.. · 软件设计师专家临考模.. · 上周网络管理员专家自.. · 网络工程师自测获奖名.. · 08年4月各大网上书店及.. |
|
||||
| · NAC安全访问控制 · 网络布线测试仪器 · Windows Server 2008专.. · Windows远程桌面应用 · 网络故障排除宝典 · 运营商封堵ADSL共享 中.. · 解析35岁技术人的价值.. · 世纪枭雄比尔盖茨的王.. |
· 主流品牌防火墙配置 · ASP.NET开发教程 · 超级计算机TOP500专题 · Vista SP1对决XP SP3 · SQL Server 2008/2005.. · 程序员如何成长? · C#技术开发指南 · 虚拟化技术还有点“虚” |
|||
|
||||
| · SOA 面向服务架构 · SQL Server 2008/2005.. · Apache技术专题 · 三层交换技术专题 · SQL Server入门到精通 · Windows远程桌面应用 · C#技术开发指南 · Apache技术专题 |
· Windows集群服务应用 · C#技术开发指南 · 国际文档格式标准开战 · 路由器设置与口令恢复 · Linux 集群技术专题 · PHP开发应用手册 · SOA 面向服务架构 · 企业数据恢复指南 |
|||
|
||||
| · SQL Server入门到精通 · SQL Server 2008/2005.. · SOA 面向服务架构 · Apache技术专题 · C#技术开发指南 · 三层交换技术专题 · Apache技术专题 · C#技术开发指南 |
· Windows远程桌面应用 · 企业数据恢复指南 · Windows集群服务应用 · 路由器设置与口令恢复 · Linux 集群技术专题 · SOA 面向服务架构 · 了解统一威胁管理(UTM).. · 反垃圾邮件技术应用 |
|||