- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
一、wchar和wstring的定义:
1、数据类型为wchar(宽字符)的变量长度为16位,占用2个byte的内存。wchar数据类型将扩展字符集中的单个字符保存为UFT-16编码形式。
2、数据类型为wstring(宽字符串)的操作数用于在一个字符串中存储多个数据类型为wchar的Unicode字符。如果未指定长度,则字符串的长度为预置的254个字。
Unicode是国际标准字符集,可译为万国码或统一码等,包含中日韩越汉字和世界上绝大多数语言文字。
如需了解Unicode码,请查看下面链接:Unicode码
二、wchar和wstring在西门子PLC中的格式
本节以汉字为例说明汉字在西门子PLC中的格式。
例如,在PLC中创建一个DB块,并将属性设置为标准DB块,在DB1块中创建如下的汉字字符串和汉字字符,并赋予起始值。如下图所示:
图.01
1、wstring数据类型的格式
下载到PLC中,通过监视表逐个查看每个字中的值。如下图所示:
图.02
可以看出:
a.数据类型为wstring的汉字字符串,通过查看DB块偏移地址可见该字符串占用254字;查看字符串第一个字,其最多存储汉字字符总数量为254个。
b.数据类型为wstring[10]的汉字字符串,通过查看DB块偏移地址可见该字符串占用12字;查看字符串第一个字,其最多存储汉字字符数量为10个。
c.汉字字符串的第一个字为该字符串总长度,第二个字为当前存储的有效字符数量。
2、wchar和16进制数的关系
在计算机领域,所有的数据都是以2进制数存储的,那么wchar,16进制数和2进制数又有什么关系?
如下图所示:
图.03
可以看出:
a.通过汉字字符好的16进制数和2进制数,可见字符(wchar)、16进制数只是在PLC中显示的形式不同,实际存储的是一个2进制值。
通过下面的网页,可以查看汉字和16进制数的对应关系。
unicode转中文,中文转unicode,链接:Unicode码
b.通过汉字字符1的16进制数和2进制数,可见汉字字符(wchar)1显示的16进制数为16#0031,而字符(char)1对应的16进制数为16#31。因此,如果使用wchar存储仅占一个字节的char字符时,则高八位为16#00,低八位是相同的,都是2进制的2#0011_0001。
三、常问问题:
1、定义为wstring的字符串,是否能保存数字和英文字母的字符?
可以。
例如,wchar#A,实际存储时,对应的16进制数为16#0041,wchar#1,实际存储时,对应的16进制数为16#0031。
如下图所示:
图.04
也就是说,使用wchar存储仅占一个字节的英文字母或数字时,对应wchar的字的高八位将为16#00。
2、如何输入特殊字符(如:回车,换行,$等)?
例如,需要输入的汉字字符串为$早上好$+回车+换行,可以参考如下表格:
图.05
根据表格说明,字符串在PLC中的书写格式:$$早上好$$$R$L或$$早上好$$$N,如下图所示:
图.06
您可能关注的文档
- 西门子博图编程基础基本数据类型.doc
- 西门子博图编程基础数据类型Array.doc
- 西门子博图编程基础数据类型DB_ANY.doc
- 西门子博图编程基础数据类型DTL.doc
- 西门子博图编程基础数据类型Hardware.doc
- 西门子博图编程基础数据类型SDT.doc
- 西门子博图编程基础数据类型String.doc
- 西门子博图编程基础数据类型Struct.doc
- 西门子博图编程基础数据类型UDT.doc
- 西门子博图编程基础数据类型Variant.doc
- 鲁科版四上 Unit 2-Lesson2 She likes dancing课件PPT.pptx
- 鲁科版四上 Unit 1-Lesson3We sing here课件PPT.pptx
- 鲁科版四上 Unit 1-Lesson4 Again please课件PPT.pptx
- 鲁科版四上 Unit 3-Lesson2 I can dance on Friday课件PPT.pptx
- 鲁科版四上 Unit 2-Lesson3 What's your hobby课件PPT.pptx
- 鲁科版四上 Unit 1-Lesson1 We have Chinese课件PPT.pptx
- 鲁科版四上 Unit 2-Lesson4 Again please课件PPT.pptx
- 鲁科版四上 Unit 3-Lesson1 What day is today课件PPT.pptx
- 鲁科版四上 Unit 3-Lesson4 Again, please课件PPT.pptx
- 鲁科版四上 Unit 1-Lesson2What's your favourite subject课件.pptx
文档评论(0)