• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >vc/mfc > _variant_t如何和char比较!

_variant_t如何和char比较!

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-06-04

佚名通过本文主要向大家介绍了 _variant_t如何和char比较!等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: _variant_t 如何和char 比较!
描述:

rt 
就是_varaint_t 中的内容和 char *字符串 比较!!!??


解决方案1:

_variant_t szchar="123456";
strcmp((char*)(_bstr_t)szchar,"123456");

解决方案2:

_com_util::ConvertBSTRToString()
的确需要delete.

解决方案3:

_variant_t fromVal;
char * tostr;
tostr= (LPTSTR)(_bstr_t)fromVal;
先把_varaint_t 转换成char*再进行比较

解决方案4:

ChangeType函数。
变成char *后用strcmp
试试!

解决方案5:

ConvertBSTRToStringSee Also
Compiler COM Global Functions
Requirements
Header: comutil.h.
Lib: comsupp.lib
Microsoft Specific
Converts a BSTR value to a char *.
char* __stdcall ConvertBSTRToString(
   BSTR pSrc
);
Parameter
pSrc 
A BSTR variable. 
Example
// ConvertBSTRToString.cpp
#include <comutil.h>
#include <stdio.h>
#pragma comment(lib, "comsupp.lib")
int main()
{
   BSTR bstrText = ::SysAllocString(L"Test");
   wprintf(L"BSTR text: %s\n", bstrText);
   char* lpszText2 = _com_util::ConvertBSTRToString(bstrText);
   printf("char * text: %s\n", lpszText2);
   SysFreeString(bstrText);
   delete[] lpszText2;
}
Output
BSTR text: Test
char * text: Test
END Microsoft Specific
Requirements
Header: comutil.h.
Lib: comsupp.lib
See Also
Compiler COM Global Functions

解决方案6:

呵呵,虽然这样子跟你的要求不符,但是效率还是比较高的,因为没有CHAR* 和WCHAR*的转化过程,_variant_t里面存放的是UNICODE字符

解决方案7:

_variant_t str=L"sfdjkl";
int i=wcscmp(L"sfdjkl",(WCHAR*)str.piVal);

解决方案8:

没有的,不用删除!

解决方案9:

同意楼上
strcmp(char_abc,(LPTSTR)(_bstr_t)Variant_tmp);


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

相关文章

  • 2017-06-04 VC模拟点击的函数,一直报错,大侠帮帮忙哈?
  • 2017-06-05 绝对送分!win2000下如何Kill进程inetinfoexe
  • 2017-06-04 ACTIVE控件中引入的窗体,对窗体中的控件怎么进行开发
  • 2017-06-04 新手向各位请教用ATL写的控件如何添加一系列MFC下面才有的功能?
  • 2017-06-04 请问如何进行精确的url过滤?
  • 2017-06-04 BHO如何支持遨游(maxthon)
  • 2017-06-05 动态加载DLL文件的问题???
  • 2017-06-04 Boost正则问题求助
  • 2017-06-05 我做了一个服务器端的socket程序,在多线程处理数据的时候,出现了瓜瓜的现象
  • 2017-06-05 线程里的窗口对象的使用

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • ATL内部结构流程图V10----初学ATL花了几天的时间画的一个图
    • 关于线程的问题
    • 如何用ATL编写COM+组件?
    • windows服务器,默认带了MTS吗?
    • 我用VC容器的方法嵌入EXCEL报表,报表已经出来了,但随之出来的工具栏新建,打开,保存,打印等按钮没有反应,是什么原因??请专家指点
    • 求介绍各个版本OFFICE/PDF文件结构的RFC文档,可下载的
    • 显IP的QQ的原理是怎么样的
    • 请教一个网络通信与多线程编程的问题
    • 在進程如何結束由該進程所生成的線程?
    • windows内核试验教程的习题请大家帮忙解答

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有