码迷,mamicode.com
首页 > Windows程序 > 详细

Windows Internals 笔记——字符和字符串处理

时间:2018-01-16 13:56:59      阅读:214      评论:0      收藏:0      [点我收藏+]

标签:post   com   返回   unicode   code   int   项目   转换   class   

1.自Windows NT起,Windows的所有版本都完全用Unicode来构建,调用Windows函数时,如果向它传入一个ANSI字符串,那么函数首先会把字符串转换为Unicode,再把结果传给操作系统。如果希望函数返回ANSI字符串,那么操作系统会先把Unicode字符串转换为ANSI字符串,再把结果返回给我们的应用程序。所以系统会产生时间和内存上的开销。

 

2.所有需要字符串作为参数的COM接口方法都只接受Unicode字符串。

 

3.默认情况下,在VS中新建一个C++项目时,已经定义了_UNICODE(就像已经定义了UNICODE一样)。针对不属于C++标准库一部分的标识符,C运行库始终会为它们附加下划线前缀。但是,Windows团队并没有这么做,所以,在应用程序中,应确保要么同时定义了UNICODE和_UNICODE,要么一个都不要定义。

Windows Internals 笔记——字符和字符串处理

标签:post   com   返回   unicode   code   int   项目   转换   class   

原文地址:https://www.cnblogs.com/zoneofmine/p/8196175.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!