新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   XML论坛     W3CHINA.ORG讨论区     计算机科学论坛     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> 本版讨论高级C/C++编程、代码重构(Refactoring)、极限编程(XP)、泛型编程等话题
    [返回] 中文XML论坛 - 专业的XML技术讨论区计算机技术与应用『 C/C++编程思想 』 → Visual Studio 2005 .net中字符串处理的问题 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 6431 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: Visual Studio 2005 .net中字符串处理的问题 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     卷积内核 帅哥哟,离线,有人找我吗?
      
      
      威望:8
      头衔:总统
      等级:博士二年级(版主)
      文章:3942
      积分:27590
      门派:XML.ORG.CN
      注册:2004/7/21

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给卷积内核发送一个短消息 把卷积内核加入好友 查看卷积内核的个人资料 搜索卷积内核在『 C/C++编程思想 』的所有贴子 访问卷积内核的主页 引用回复这个贴子 回复这个贴子 查看卷积内核的博客楼主
    发贴心情 Visual Studio 2005 .net中字符串处理的问题

    在2005编译以前的VC++项目时,经常出现与字符串处理相关的一堆错误,有UNICODE和ASCII 两种不同的编码方式,不同的编码方式要使用不同的字符串处理函数,也就是一种是char,8位的;一个种wchar_t,16位的.以前VC++6中也有这个问题,在VS2005中编译的时候,总是一堆错误,最多的就是与字符串处理相关,
    在VS2005中,还是要严格的使用保险的带t的类型,
    下面是一些风格字符串对应的t形式的宏在\Microsoft Visual Studio 8\VC\include\tchar.h中进行定义的

    /* Formatted i/o */

    #define _tprintf        printf
    #define _tprintf_l      _printf_l
    #define _tprintf_s      printf_s
    #define _tprintf_s_l    _printf_s_l
    #define _tprintf_p      _printf_p
    #define _tprintf_p_l    _printf_p_l
    #define _tcprintf       _cprintf
    #define _tcprintf_l     _cprintf_l
    #define _tcprintf_s     _cprintf_s
    #define _tcprintf_s_l   _cprintf_s_l
    #define _tcprintf_p     _cprintf_p
    #define _tcprintf_p_l   _cprintf_p_l
    #define _vtcprintf      _vcprintf
    #define _vtcprintf_l    _vcprintf_l
    #define _vtcprintf_s    _vcprintf_s
    #define _vtcprintf_s_l  _vcprintf_s_l
    #define _vtcprintf_p    _vcprintf_p
    #define _vtcprintf_p_l  _vcprintf_p_l
    #define _ftprintf       fprintf
    #define _ftprintf_l     _fprintf_l
    #define _ftprintf_s     fprintf_s
    #define _ftprintf_s_l   _fprintf_s_l
    #define _ftprintf_p     _fprintf_p
    #define _ftprintf_p_l   _fprintf_p_l
    #define _stprintf       sprintf
    #define _stprintf_l     _sprintf_l
    #define _stprintf_s     sprintf_s
    #define _stprintf_s_l   _sprintf_s_l
    #define _stprintf_p     _sprintf_p
    #define _stprintf_p_l   _sprintf_p_l
    #define _sctprintf      _scprintf
    #define _sctprintf_l    _scprintf_l
    #define _sctprintf_p    _scprintf_p
    #define _sctprintf_p_l  _scprintf_p_l
    #define _sntprintf      _snprintf
    #define _sntprintf_l    _snprintf_l
    #define _sntprintf_s    _snprintf_s
    #define _sntprintf_s_l  _snprintf_s_l
    #define _vtprintf       vprintf
    #define _vtprintf_l     _vprintf_l
    #define _vtprintf_s     vprintf_s
    #define _vtprintf_s_l   _vprintf_s_l
    #define _vtprintf_p     _vprintf_p
    #define _vtprintf_p_l   _vprintf_p_l
    #define _vftprintf      vfprintf
    #define _vftprintf_l    _vfprintf_l
    #define _vftprintf_s    vfprintf_s
    #define _vftprintf_s_l  _vfprintf_s_l
    #define _vftprintf_p    _vfprintf_p
    #define _vftprintf_p_l  _vfprintf_p_l
    #define _vstprintf      vsprintf
    #define _vstprintf_l    _vsprintf_l
    #define _vstprintf_s    vsprintf_s
    #define _vstprintf_s_l  _vsprintf_s_l
    #define _vstprintf_p    _vsprintf_p
    #define _vstprintf_p_l  _vsprintf_p_l
    #define _vsctprintf     _vscprintf
    #define _vsctprintf_l   _vscprintf_l
    #define _vsctprintf_p   _vscprintf_p
    #define _vsctprintf_p_l _vscprintf_p_l
    #define _vsntprintf     _vsnprintf
    #define _vsntprintf_l   _vsnprintf_l
    #define _vsntprintf_s   _vsnprintf_s
    #define _vsntprintf_s_l _vsnprintf_s_l

    #define _tscanf         scanf
    #define _tscanf_l       _scanf_l
    #define _tscanf_s       scanf_s
    #define _tscanf_s_l     _scanf_s_l
    #define _tcscanf        _cscanf
    #define _tcscanf_l      _cscanf_l
    #define _tcscanf_s      _cscanf_s
    #define _tcscanf_s_l    _cscanf_s_l
    #define _ftscanf        fscanf
    #define _ftscanf_l      _fscanf_l
    #define _ftscanf_s      fscanf_s
    #define _ftscanf_s_l    _fscanf_s_l
    #define _stscanf        sscanf
    #define _stscanf_l      _sscanf_l
    #define _stscanf_s      sscanf_s
    #define _stscanf_s_l    _sscanf_s_l
    #define _sntscanf       _snscanf
    #define _sntscanf_l     _snscanf_l
    #define _sntscanf_s     _snscanf_s
    #define _sntscanf_s_l   _snscanf_s_l


    /* Unformatted i/o */

    #define _fgettc         fgetc
    #define _fgettc_nolock  _fgetc_nolock
    #define _fgettchar      _fgetchar
    #define _fgetts         fgets
    #define _fputtc         fputc
    #define _fputtc_nolock  _fputc_nolock
    #define _fputtchar      _fputchar
    #define _fputts         fputs
    #define _cputts         _cputs
    #define _gettc          getc
    #define _gettc_nolock   _getc_nolock
    #define _gettch         _getch
    #define _gettch_nolock  _getch_nolock
    #define _gettche        _getche
    #define _gettche_nolock _getche_nolock
    #define _gettchar       getchar
    #define _gettchar_nolock _getchar_nolock
    #define _getts          gets
    #define _getts_s        gets_s
    #define _cgetts         _cgets
    #define _cgetts_s       _cgets_s
    #define _puttc          putc
    #define _puttc_nolock   _putc_nolock
    #define _puttchar       putchar
    #define _puttchar_nolock _putchar_nolock
    #define _puttch         _putch
    #define _puttch_nolock  _putch_nolock
    #define _putts          puts
    #define _ungettc        ungetc
    #define _ungettc_nolock _ungetc_nolock
    #define _ungettch       _ungetch
    #define _ungettch_nolock _ungetch_nolock

    /* String conversion functions */

    #define _tcstod     strtod
    #define _tcstol     strtol
    #define _tcstoul    strtoul
    #define _tstof      atof
    #define _tstol      atol
    #define _tstoi      atoi
    #define _tstoi64    _atoi64
    #define _tcstod_l     _strtod_l
    #define _tcstol_l     _strtol_l
    #define _tcstoul_l    _strtoul_l
    #define _tstof_l      _atof_l
    #define _tstol_l      _atol_l
    #define _tstoi_l      _atoi_l
    #define _tstoi64_l    _atoi64_l

    #define _itot_s     _itoa_s
    #define _ltot_s     _ltoa_s
    #define _ultot_s    _ultoa_s
    #define _itot       _itoa
    #define _ltot       _ltoa
    #define _ultot      _ultoa
    #define _ttoi       atoi
    #define _ttol       atol

    #define _ttoi64     _atoi64
    #define _tcstoi64   _strtoi64
    #define _tcstoi64_l   _strtoi64_l
    #define _tcstoui64  _strtoui64
    #define _tcstoui64_l  _strtoui64_l
    #define _i64tot_s   _i64toa_s
    #define _ui64tot_s  _ui64toa_s
    #define _i64tot     _i64toa
    #define _ui64tot    _ui64toa

    /* String functions */

    /* Note that _mbscat, _mbscpy and _mbsdup are functionally equivalent to
       strcat, strcpy and strdup, respectively. */

    #define _tcscat     strcat
    #define _tcscat_s   strcat_s
    #define _tcscpy     strcpy
    #define _tcscpy_s   strcpy_s
    #define _tcsdup     _strdup
    #define _tcslen     strlen
    #define _tcsnlen    strnlen
    #define _tcsxfrm    strxfrm
    #define _tcsxfrm_l    _strxfrm_l
    #define _tcserror   strerror
    #define _tcserror_s   strerror_s
    #define __tcserror  _strerror
    #define __tcserror_s  _strerror_s


       收藏   分享  
    顶(0)
      




    ----------------------------------------------
    事业是国家的,荣誉是单位的,成绩是领导的,工资是老婆的,财产是孩子的,错误是自己的。

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/12/13 13:58:00
     
     GoogleAdSense
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 C/C++编程思想 』的所有贴子 访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2025/2/9 1:49:07

    本主题贴数1,分页: [1]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    5,924.805ms