[size=11px]大家好,
        因为Windows 好些API 传入的函数都需要TCHAR类型, 但有些数据是char 类型的,我想把他们转换一下,高手指点一下
      1 . 如char [] 数组转化为TCHAR[]数组;
      2.  或者把double 类型直接转换为 TCHAR类型
谢谢!

解决方案 »

  1.   

    在多字节的情况下TCHAR与char是一样的。
    Unicode下可以用WideCharToMultiByte转换一下
      

  2.   

    sprintf()
    swprintf()
    %f
    格式化为TCHAR等
      

  3.   

    http://blog.csdn.net/zhoujielunzhimi/article/details/8082286
    TCHAR,分为char和wchar_t
      

  4.   


    swprintf 不支持浮点类型
      

  5.   


    TCHAR 类型是不是应该包括 1. char类型  2.宽字符 wchar_t类型
    但是但系统API 参数是 TCHAR 类型时, 传入char 类型不行
      

  6.   

    或者把double 类型直接转换为 TCHAR类型
    ------------
    这个应该很容易的吧,格式化字符串的函数都可以,比如StringCchPrintf(...)
      

  7.   

    1. 
    //如果是vs20XX professional及以上的版本
    #include <AtlBase.h>
    #include <AtlConv.h>
    LPCTSTR szr = CA2T( szReplaceFile );2. 
    _stprintf
      

  8.   

    不好意思 swprintf 支持浮点类型
    wsprintf 好像不支持
      

  9.   

    你不选择码制会有问题的如果你选择码制,诸如多字节或者Unicode如果是多字节:
    有系统预编译宏会把char转换为Tchar的如果是Unicode
    有系统预编译宏会把char转换为wchar的
      

  10.   

    谢楼上几位的指点
    最后选择了一种简单方法 swprintf()  解决了