频 道 直 达 - 新闻 - 培训 - 软件 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 读书 - 博客 - BBS
51CTO.COM_中国最大的网络技术网站
找资料:

2.2.2 字符类型

作者: (美)米凯利斯(Michaelis, M.)著/周靖译 出处:人民邮电出版社  2008-07-18 16:57    砖    好    评论   进入论坛
阅读提示:《C#本质论》第2章数据类型,这一章将探讨基本的C#类型,继续学习C#的基础知识,本小节为大家介绍字符类型。

2.2.2 字符类型

字符类型char用于表示16位字符,其取值范围对应于Unicode字符集。从技术上说,一个char的大小等同于一个16位无符号整数(ushort)的大小,后者的取值范围是0~65 535。然而,char是C#中的一个独一无二的类型,不应该像这样来对待。
char的BCL名称是System.Char。

初学者主题:Unicode标准

Unicode是用于对人类大多数语言中的字符进行表示的一个国际性标准。它便于计算机系统构建本地化的应用程序,为不同的语言文化显示具有本地特色的字符。

高级主题:16位不足以表示所有Unicode字符

令人遗憾的是,并不是所有Unicode字符都可以用一个16位char来表示。刚开始提出Unicode的概念的时候,它的设计者以为16位已经足够。但随着支持的语言越来越多,才发现当初的假定是错误的。结果是,一些Unicode字符要由一对称为“代理项”的char构成,总共32位。
为了输入一个字符类型的字面量,需要将字符放到一对单引号中,比如'A'。所有键盘字符都可以像这样输入,包括字母、数字以及特殊符号。
有的字符不能直接插入源代码,需要进行特殊处理。这些字符有一个反斜杠(\)前缀,并跟随一个特殊字符代码。我们将反斜杠和特殊字符代码统称为转义序列(escape sequence)。例如,'\n'代表换行符,而'\t'代表制表符。由于反斜杠标志着一个转义序列的开始,所以不能再用来直接表示一个反斜杠字符,而要使用'\\'来表示一个反斜杠字符。

代码清单2-9输出一个单引号,因为\'代表的是一个单引号。

代码清单2-9 使用转义序列来显示一个单引号

 class SingleQuote
{
static void Main()
{
System.Console.WriteLine('\'');
}
}

表2-4总结了转义序列以及字符的Unicode编码。

表2-4 转义字符

转义序列

字符名称

Unicode编码

\'

单引号

0x0027

\''

双引号

0x0022

(续)

转义序列

字符名称

Unicode编码

\\

反斜杠

0x005C

\0

Null

0x0000

\a

Alert (system beep)

0x0007

\b

退格

0x0008

\f

换页(Form feed

0x000C

\n

换行(Line feed或者newline

0x000A

\r

回车

0x000D

\t

水平制表符

0x0009

\v

垂直制表符

0x000B

\uxxxx

十六进制Unicode字符

\u0029

\x[n][ n][ n]n

十六进制Unicode字符(前三个占位符是可选的),\uxxxx的长度可变版本

\x3A

\Uxxxxxxxx

用于创建“代理项”对的Unicode转义序列

\UD840DC01

可以使用Unicode代码来表示任何字符。为此,请为Unicode值附加\u前缀。可以使用十六进制记数法来表示Unicode字符。例如,字母A的十六进制值是0x41,代码清单2-10使用Unicode字符来显示一个笑脸符号(:)),输出2-8展示了结果。

代码清单2-10 使用Unicode编码来显示一个笑脸符号

 System.Console.Write('\u003A');
System.Console.WriteLine('\u0029');
输出2-8
 :) 
【责任编辑:夏书 TEL:(010)68476606】

回书目   上一节   下一节
专题
程序员如何成长?
C#实用基础教程
C#技术开发指南
C#本质论
Windows Vista之兵法
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 最 大 的 网 络 技 术 网 站 ·
技 术 成 就 梦 想
订阅技术快讯
电子杂志下载
名称:SQL Server数据库管理精品黄皮书
简介:书中文章经过精挑细选,便于用户能根据自己的实际工作和学习,快速在本书寻找到相关资料。内容涵盖了SQL Server的安装与升级、语句查询、数据备份和恢复、自动化任务、数据同步、数据字典、安全和预防、性能和优化、集群等各方面应用信息,以及DBA管理人员在数据库管理工作中
名称:2007路由技术大全
简介:《2007路由技术大全》由51CTO.com网站特别策划制作,该书包括路由器技术、路由器产品、路由器配置、安全设置、路由器故障处理、路由器密码恢复,以及广大网友在实践使用中的心得经验和技巧文章,内容注重实用性,适用于初学者入门,也适合多年从业者提高,是一本实践和理论完
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。
CCNA认证考试Pass必备
CCNA认证考试Pass必备
求职必杀技 决战面试官
求职必杀技 决战面试官
龙芯要做中国的“奔腾”
龙芯要做中国的“奔腾”
· 龙芯要做中国的“奔腾”
· 2008年上半年IT技术图..
· 虚拟化的“赤壁之战”
· 服务器节能与绿色IT
· 微软出价446亿美元收购..
· 脉冲无线电uwb专题
· 802.11n:下一代的无线..
· 云计算时代来临
· IT工程师该不该考CCIE..
· 浏览器的战国时代
· 2008年上半年全国软考..
· 无线网络环境
· 无线网状网(MESH)
· 无线重中之重:安全问题
· 网络故障排除宝典
· Windows Server 2008专..
ARP攻击防范与解决方案
ARP攻击防范与解决方案
SQL Server 2008/2005全解
SQL Server 2008/2005全解
SOA 面向服务架构
SOA 面向服务架构
· SOA 面向服务架构
· SQL Server 2008/2005..
· Apache技术专题
· 三层交换技术专题
· SQL Server入门到精通
· 无线网状网(MESH)
· Windows远程桌面应用
· C#技术开发指南
· Apache技术专题
· Windows集群服务应用
· C#技术开发指南
· 文档格式标准开战 OOXM..
· 路由器设置与口令恢复
· Linux 集群技术专题
· PHP开发应用手册
· SOA 面向服务架构
ARP攻击防范与解决方案
ARP攻击防范与解决方案
SQL Server 2008/2005全解
SQL Server 2008/2005全解
SQL Server入门到精通
SQL Server入门到精通
· SQL Server入门到精通
· SQL Server 2008/2005..
· SOA 面向服务架构
· Apache技术专题
· C#技术开发指南
· 三层交换技术专题
· Apache技术专题
· C#技术开发指南
· Windows远程桌面应用
· 企业数据恢复指南
· Windows集群服务应用
· 路由器设置与口令恢复
· Linux 集群技术专题
· SOA 面向服务架构
· 了解统一威胁管理(UTM)..
· 解析35岁技术人的价值..