说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

关于wchar_t类型!!

编辑:说三道四文库 发布时间:2017-02-27 12:58
HTML文档下载 WORD文档下载 PDF文档下载
wchar_t用在哪里??具体的使用方法!!!!


拜托各位老大
关注

和尚一提问题

肯定就是高难度的了
我还不知道有这个类型啊,,
我一定要留意。。。
宽字符类型
为了与unicode兼容
叶老大!!帮帮小弟!!!
SSTS(铁冰) 大虾!!帮帮
一个字符串加上前缀修饰符“L”后就成了宽字符串
此外还有多字符常量等!

比如:'\006\007\008\009'
需要注意的是,还有这样的类型:• Wi d e S t r i n g 由Wi d e C h a r 字符组成,而不是由A n s i C h a r 字符组成的,它们跟U n i c o d e 字符串兼容。
• Wi d e S t r i n g 用S y s A l l o c S t r L e n ( ) A P I 函数进行分配,它们跟O L E 的B S T R 字符串相兼容。
• Wi d e S t r i n g 没有引用计数,所以将一个Wi d e S t r i n g 字符串赋值给另一个Wi d e S t r i n g 字符串时,就
需要从内存中的一个位置复制到另一个位置。这使得Wi d e S t r i n g 在速度和内存的利用上不如
A n s i S t r i n g 有效。
就像上面所提到的,编译器自动在A n s i S t r i n g 类型和Wi d e S t r i n g 类型的变量间进行转换。示例如
下:
v a r
W: w i d e S t r i n g ;
S : s t r i n g ;
b e g i n
W: = ' M a r g a r i t a v i l l e ' ;
S : = W; // wideString 转换成A n s i S t r i n g
S:='Come Monday';
W:=S; // AnsiString 转换成Wi d e S t r i n g
e n d ;
为了能灵活地运用Wi d e S t r i n g 类型,Object Pascal 重载了C o n c a t ( )、C o p y 、I n s e r t ( )、L e n g t h ( )、
P o s ( )和S e t L e n g t h ( )等例程以及+、=和< >等运算符。下面的代码在语法上是正确的:
v a r
W 1 , W 2 : Wi d e s t r i n g ;
P : I n t e g e r ;
b e g i n
W 1 : = ' E n f i e l d ' ;
W 2 : = ' f i e l d ' ;
If W1<>W2 then
P : = P o s ( W 1 , W 2 ) ;
e n d ;
就像A n s i S t r i n g 和S h o r t S t r i n g 类型一样,能用数组的下标来访问Wi d e S t r i n g 中一个特定的字符:
v a r
W: Wi d e S t r i n g ;
C : Wi d e C h a r ;
b e g i n
W:='Ebony and Ivory living in prefect harmony';
C:=W[Length(W)]; //C 包含W 字符串的最后一个字符
e n d ;
4. 以n u l l 结束的字符串
正如前面所提到的,D e l p h i 有三种不同的以n u l l 结束的字符串类型:P C h a r 、PA n s i C h a r 和
P Wi d e C h a r 。它们都是由D e l p h i 的三种不同字符组成的。这三种类型在总体上跟P C h a r 是一致的。
P C h a r 之所以保留是为了跟Delphi 1.0 和Win32 API 兼容,而它们需要使用以n u l l 结束的字符串,P C h a r
被定义成一个指向以n u l l (零)结束的字符串指针
在BCB里也有widestring的哦!这下子知道和bstr的转换了吧:)
记得给分哦!嘿嘿~~~
它经常用在COM中,因为COM对象的函数的字符串参数基本上都是UNICODE的。
谢谢rh@@@@@@@@@@@@@@@@@@

以后你和gugu成了事!!!!我大礼送上1!!!!!!!!!!!
我加分!!!!!大家快来!!!!净可能说多一点!!!!!!!!!!1

















我K!!!
who is gugu? 和 rh 大哥什么关系?
rh你的字体好奇怪!
先踢球去,回来再上这来。
我也要走了
我还要写程序呢~~~
其实你要的,写下widestring,按f1,全有。没有的,我基本都c+c和c+v来给你了
如何加前缀!!!
RH好样的。
??如何加前缀!!! 
up
我K!给分!
void __fastcall TForm1::Button1Click(TObject *Sender)
{
        char L = 'A';//定义一个L先
        //注意,为了测试我说的话,你可以把这个变量定义去掉,可以看见再加L依然正确
        //而加别的就不可以!

        WideString s = L"how";//这里的L为前缀修饰符号,表示是宽字符串
        //可以试下面的语句
        ///////WideString s1 = A"aaaaaa";//这一句就不可以,前面加的是A,不知道是什么玩意

        AnsiString a = s;//直接转换
        ShowMessage(a);//显示出how

        a = a + L;//这里的L是变量,其值为字符A,是我们先前所定义的那个
        ShowMessage(a);//显示出how L
}
错了一点,最后显示的是howA,不是howL
RH你好牛啊!引自阿良。
强烈要求把此贴送入精华区。
RH我还想给你点分做为奖赏,可惜我没有可用分了,等我到灌水乐园再赚一些再给你。
哈哈,虚竹我在帮你拉客呢。
RH!!!!!!!!!!!!!!!!!




太好了!!!!!!!!!!!!!!



我送你100分!!!!!!





不过再等一下!!!结束时给你







class  AtoWConverter {
  LPWSTR _wstr;
public:
  AtoWConverter (LPCTSTR s);
  ~AtoWConverter ();
  operator LPCWSTR ();
};
class  WtoAConverter {
  LPTSTR _astr;
public:
  WtoAConverter (LPCWSTR w);
  ~WtoAConverter ();
  operator LPCTSTR ();
};

AtoWConverter::AtoWConverter (LPCTSTR s) {
#ifdef UNICODE
  // In this case both strings are Unicode and we just use normal lstrcpy.
  WCHAR* _wstr = new WCHAR[lstrlen(s)];
  lstrcpy (_wstr, s);
#else
  // We need to convert our ASCII string to Unicode and copy after that.
  //                             CP_ACP
  int len = MultiByteToWideChar (CP_OEMCP, 0, s, -1, NULL, 0);
  _wstr = new WCHAR[len];

  //                   CP_ACP
  MultiByteToWideChar (CP_OEMCP, 0, s, -1, _wstr, len);
#endif
}

AtoWConverter::~AtoWConverter () {
  delete [] _wstr;
}

AtoWConverter::operator LPCWSTR () {
  return _wstr;
}

WtoAConverter::WtoAConverter (LPCWSTR w) {
#ifdef UNICODE
  // In this case both strings are Unicode and we just use normal lstrcpy.
  TCHAR* _astr = new TCHAR[lstrlen(s)];
  return lstrcpy (_astr, s);
#else
  // We need to convert the Unicode to ASCII string and copy after that.
  //                             CP_ACP
  int len = WideCharToMultiByte (CP_OEMCP, 0, w, -1, NULL, 0, NULL, NULL);
  _astr = new char[len];

  //                   CP_ACP
  WideCharToMultiByte (CP_OEMCP, 0, w, -1, _astr, len, NULL, NULL);
#endif
}

WtoAConverter::~WtoAConverter () {
  delete [] _astr;
}

WtoAConverter::operator LPCTSTR () {
  return _astr;
}

以上试用UNICO互相转化Ansi的一个类的使用。
你可能有用。
wchar_t就是宽字符,占两个字节
up
我天山六阳掌!!!!!
天山六阳掌????????哈哈哈哈哈哈~~~还说你不是和尚!!!!!
到 11点我就给分
时间到!!!
在Swift中使用JavaScript的方法和技巧 增强用户体验 让网站和APP更具动感的几点建议 《近匠》蒲公英:一站式免费应用内测平台 用Swift开发iOS 8新应用:斯坦福免费课程上线iTunes U Swift开发必备技巧:static和class的使用 你可能没听过的11个Python库 移动Web技术的春天来了?Facebook发布React Native,用JavaScript开发移动原生应用 开发不易!2015年移动应用开发趋势总结 .NET开发者必备的工具箱 热情不减!七款Swift应用开源项目推荐 如何给苹果提交Bug或功能需求? 深入钻研Augular两年 谈谈其究竟适用于哪些场合 唐巧:谈谈React Native 在Swift中,如何更优雅地处理网络返回数据? Spark生态系统解析及基于Redis的开源分布式服务Codis 阿里巴巴技术专家杨晓明:基于Hadoop技术进行地理空间分析 Bowery为什么放弃Node.js,转向Go? 《近匠》有了APM,用户快到碗里来——专访听云CTO Wood 联通WO+梦工厂唐敏:走进厦门 构建移动数字生态 HTML5 VS 原生,世界究竟是谁的? 完全开放 微软开源.NET Core的执行引擎CoreCLR Swift与Objective-C的兼容“黑魔法”:@objc和Dynamic 网络技术,从“数制”开始学起——跟随王达老师一步步学习 UPYUN CTO黄慧攀:UPYUN这些年,一段“刚好”的旅程 2015移动游戏重中之重:需成功把握1%付费用户的心 UNITE 2015 BEIJING 20大议题首爆 死路一条?智能硬件免费没有未来 APICloud推出“模块 Store” 公布APP创业 “Time to Market”战略 极路由加入海尔U+联盟 可跨品牌控制多款家居设备 《近匠》Amaze UI:做最懂中国程序员的开源HTML5框架 Testin CTO徐琨:要做测试领域的阿里云! 有谁知道怎么解win98的开机密码? 用 procedure 与 trigger 、database link 能完成吗? flowerofwind,rjcludy()请回答 COM中的一个怪问题:我将::CoUninitialize();去掉后程序不出错,添上出现非法操作,是啥问题??? 请问?????? 如何在程序中播放rm格式的文件??? edit怎么用啊? JB6盘中不含 Borland Enterprise Server AppServer5.0,各位快载一个上去吧! 如何改变显示的分辨率? 那里有c#编译器免费下载?谢谢 如何在vc中播放rm格式的文件??? 那位大侠知道怎么创建并使用一个变量,每次只让一个进程访问???给个例子吧,大大大 大 delphi中怎么编写中断,获取外部设备传来的信息?急救!! 数值模拟与计算仿真,高手请帮忙! 请问:dos下图形放大算法或思路?还有.........(高手请进) 求教!!!!SOS!! --请问如何将一个BMP图形文件转成JPG图形文件,高分请教师--- 高分给出,win98的怪问题! 打印统计问题 请教 : html的javascript 中报错:document.Form1.client_name.value不是对象 VC++里面如何从文本文件中一行一行读取文件? 请问,如何用mail函数批量发送邮件.多谢. 各位请教一下,Jsp 的服务resin在win2000下是怎样配置的 各位兄弟: 有谁知道 侯杰 的 <多线程程序设计> 什么时候才能买到??? 哪里有VFP3.0下载? system.ini和win.ini的作用 怎样生成安装包,多谢! 如何在两个不同的应用程序之间拖动文本字符 请问,PTSTR 和 PSTR 有什么不同? 反对上海电信变相涨价的行为。我能不能告中国电信“违约”和“欺诈”呢。 求救!误删Office2000注册表! 生成.exe出错 在Excel中,如何让某些行不能滚动? 在--成都--程序员能拿多少--¥--???? 换了17寸纯平显示器,开心,放分. 错装PB7,不能无create datawindows的图标,全是XX,为什么? 请问怎样遍历一个页面中服务器端的所有对象? 能否跟我说说——自动控制方面——与delphi编程的基本常识?我一直想了解,但不知道我们编的程序如何去跟那些硬件搞在一起而且控制硬件呢? 程序出错 发现一个不错的网站!www.ffboy.com 兩個Recordset之間數据轉入和轉出問題???. 高手請進......(一定給分) 大家推荐一下 ,win2k 下的 XML 编辑器。 请问男女之间存不存在真正的友情? 请教一下,怎样打印 java applet绘出的图形?,要用java 编写 高手请进!!!关于数据库 很菜的问题!字符串转化的问题? 最近运行D盘时,出来"找不到该路径..."的对话框,是什么原因? 指针数组定义的问题 我想截获tcp包,问从何下手,大鸟们 快来帮忙 远程数据传输问题:不同地域,不同系统间的数据传送有什么好方法? 急!!!(原谅我的无知) DELPHI怎么联接Access数据库!!!BDE ADO都可以!!!! 江河中的水不停的流入大海,可是海洋里的水却不会溢出来,江河里的水也一直流不完,你知道这是什么原因吗 急…函数f(x)=x(x-1)(x-2)…(x-50)在x=0处的导数为答案是50! 高等数学求导应用 怎样理解法则 江河中的日夜不停地流入海洋.海洋中里的水却也总也不会溢出来,江河里的水也一直流不完.这是什么原因? 形容"月亮"应该用什么词?**的月亮?最好来个成语好吗?一楼的也太简单了吧... 形容8月的词语比如火红的七月,金秋十月这些,那么8月份该怎么讲呢?除了八月桂花香,还有别的吗? 江河中的水流入海洋,海洋里的水为什么也不溢出来江河中的水日夜不停地流入海洋.海洋里的水却总也不溢出来,江河里的水也一直流不完.这是什么原因?我们能自己做出自己的解释吗? 用什么词来形容月亮 请问8月最好用什么词来形容 求y=[(x-1)^2][(x+1)^3]绝对值的导数,注意是函数绝对值的导数 形容月光或者月光照在地上的词只限两字 最多不超出3个字 八月季节怎么形容 物体的机械能守恒,一定只受重力和弹力作用.请解释为什么错误 怎样形容月亮圆 关于月亮的修饰词今日遇到一个语文问题,就是按照例子填空,如直勾勾的盯着,来填写***的月亮, 判断:只有重力和弹力作用时,机械能才能守恒. 形容月亮圆的词有哪些啊就是指月亮很圆的 词 电荷的单位是库仑,1库仑相当于6.25乘于10的18次方个电子的电荷量,那么,一个电子所带的电量是多少? 外力只有重力和弹力做功,机械能守恒吗? 圆月怎么形容 一库仑的电荷量是多少电子的所带的电量 重力弹力均做功的条件下机械能守恒么 月亮圆的像什么,一个词语来形容.一个四字词语,要通顺. 一库仑为什么等于6.25×10 ^18=6250000000000000000个电子所带的电量? 机械能守恒为什么只有重力或弹力做功?弹力是只指弹簧的拉力吗?能讲一下为什么是重力或弹力这个条件而不是别的什么摩擦力啊什么的?讲的细致一点行吗?我的物理不是很好 形容月亮圆的成语 两个可导函数之商的求导公式是什么? 对数函数怎么求导 帮我构造一个函数嘛 要求f(x)大于等于0,f(x)一阶导数的绝对值大于等于1,定义域为R哦 数学函数求导基本公式 使水在水自然界日夜不停的循环的主要原因是什么是什么原因 一段金属导体(不闭合)垂直于匀强磁场作匀速运动时,导体中有没有电流?如果有,受不受安培力? 怎么形容九月 若函数在【-1,1】上连续,在(-1,1)上可导,且函数导数的绝对值小于等于M成立,y(0)=0.则必有,函数的绝对值小于等于M吗,为什么 导数是绝对值的原函数例如,导数为 |X| 原函数是什么? 求函数求导公式 设函数:f:R→R在R上二阶可导,并且满足f(x)的绝对值小于等于1,f(x)的二阶导数的绝对值小于等于1.求证,fx一阶导数必小于等于2 带绝对值导数如何求原函数 函数 求导法则函数商的求导法则 设函数:f:R→R在R上二阶可导,并且满足f(x)的绝对值小于等于1,f(x)的二阶导数的绝对值小于等于1.证 哪个函数的导数是(sinx)的绝对值 九月怎么形容 物理什么情况下重力等于安培力? 月亮升起的地方表达了什么 形容九月的词汇 【电磁炮】为什么安培力等于阻力时速度最大 怎么形容月亮. 形容九月的名词金秋十月,那么九月怎么形容? 为什么安培力做负功时等于产生的热量 小岛月亮升起的地方 表达什么感情 形容9月的句子有哪些啊 安培力什么时候不做功?怎么有的题明明有安培力却说:电阻R上产生的的热量等于金属棒重力势能的减少 【月亮升起的地方】诗歌表达了作者的什么感情 一个电子的电量是1.6×10-9 C,那多少个电子的电量为1库仑呢? 请问江河中的水日夜不停地流入海洋,海洋里的水却总也不会溢出来,江河里的水也一直流不完,这是什么原因? 焦耳怎样转换成公斤的 高数积分求导公式在哪章有 证明:如果函数f(x)在[a,b]上可导,且(f(x)导数的绝对值)小于等于M,则,[(f(b)-f(a))的绝对值 ...证明:如果函数f(x)在[a,b]上可导,且(f(x)导数的绝对值)小于等于M,则,[(f(b)-f(a))的绝对值 焦耳每平方毫米怎么转换成千焦耳每平方毫米 高数 关于求导法则
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn