1.今天写了个批处理文件 准备向main传递参赛 发现在vs2008运行正常 vs2010运行只有首字母
2.需要在项目--属性--常规-字符集里面设置成多字节就好了,以前是unicode
3.因为
char:计算机编程语言(c、c++、java、VFP等)中可容纳单个字符的一种基本数据类型。
TCHAR:为了满足Unicode编码,对char的扩展,即_T(“str”)表示TCHAR类型
C++支持两种字符串,即常规的ANSI编码(使用""包裹)和Unicode编码(使用L""包裹),这样对应的就有了两套字符串字符串处理函数,比如:strlen和wcslen,分别用于处理两种字符串char和TCHAR类型
如
winnt.h头文件中: typedef WCHAR TCHAR, *PTCHAR; 表明 TCHAR 与 WCHAR 属同一类型 char szA[100]; // ANSI string buffer WCHAR szW[100]; // Unicode string buffer // Normal sprintf:all strings are ANSI sprintf(szA, "%s","ANSI Str"); // Converts Unicode string to ANSI sprintf(szA,"%S",L"Unicode Str"); // Normal swprintf:all strings are Unicode swprintf(szW,L"%s",L"Unicode Str"); // Converts ANSI string to Unicode swprintf(szW,L"%S", "ANSI Str");