1.在有的时候处理字符串的时候需要加上_T
这是什么意思?
2.character 里VS2005默认的是unicode~在世哟难的时候有什么需要注意的吗?
3.debug和release有什么不一样,为什么我的程序在debug下调时可以通过,在release模式下却提示出错呢???
4.在debug模式调试的出现VC Debug assertion failed是怎么回事,我觉得程序看上去似乎没有问题,而且,出现这种错误的时候只要点忽略,程序就可以正常地运行下去?

解决方案 »

  1.   

    1.在有的时候处理字符串的时候需要加上_T:这是为了兼容unicode程序和非unicode程序。
    这是什么意思?
    2.character 里VS2005默认的是unicode~在世哟难的时候有什么需要注意的吗?中文和英文编码格式都是一样,一般都是占两个字节。
    3.debug和release有什么不一样,为什么我的程序在debug下调时可以通过,在release模式下却提示出错呢???有一些不同,比如变量的初始化。
    4.在debug模式调试的出现VC Debug assertion failed是怎么回事,我觉得程序看上去似乎没有问题,而且,出现这种错误的时候只要点忽略,程序就可以正常地运行下去?一般是传入的值超出了应该传入值的范围。
      

  2.   

    1.在有的时候处理字符串的时候需要加上_T
    这是什么意思?//转换为unicode
    2.character 里VS2005默认的是unicode~在世哟难的时候有什么需要注意的吗?
    //在使用字符的时候主意转换为unicode  呵呵
      

  3.   

    为什么还非要转换成unicode啊
    真不方便
    难道默认给他的字符不算是unicode吗?
      

  4.   

    _T()是一个宏定义,它把字符转换成unicode。
    字符编码有很多种,比如ASII,SBCS,MBCS, unicode,在编程时要注意一下。
    用TCHAR类型可以使程序自动在ASII,unicode间转换,不必考虑字符集的问题。Debug assertion failed是由于在Debug在,会有ASSERT(experssion)宏 判断,当experssion的逻辑值为false时,就会报错。