菜鸟问个C++关于wcslen求字符长度的问题
答案:3 悬赏:0 手机版
解决时间 2021-04-28 04:34
- 提问者网友:萌卜娃娃
- 2021-04-27 06:12
菜鸟问个C++关于wcslen求字符长度的问题
最佳答案
- 五星知识达人网友:往事埋风中
- 2021-04-27 07:00
你用到#include 就要稍微详细讲了.字符数组有胖瘦之分.瘦的是char 胖的是wchar_t.而TCHAR呢? 通用的.如果工程设置为多字节字符集就帮你转瘦的,UNICODE就转胖的 .
因此你应该统一使用一个阵营的函数
通用阵营 胖阵营 瘦阵营
_tcscat wcscat strcat
_tcschr wcschr strchr
_tcscpy wcscpy strcpy
_tcscspn wcscspn
_tcslen wcslen strlen
_tcsncat wcsncat strncat
_tcsncpy wcsncpy strncpy
_tcspbrk wcspbrk
_tcsrchr wcsrchr
_tcsspn wcsspn
_tcsstr wcsstr strstr
_tcstok wcstok
所以你的问题是混用了
char => strlen wchar_t => wcslen TCHAR -> _tcslen
因此你应该统一使用一个阵营的函数
通用阵营 胖阵营 瘦阵营
_tcscat wcscat strcat
_tcschr wcschr strchr
_tcscpy wcscpy strcpy
_tcscspn wcscspn
_tcslen wcslen strlen
_tcsncat wcsncat strncat
_tcsncpy wcsncpy strncpy
_tcspbrk wcspbrk
_tcsrchr wcsrchr
_tcsspn wcsspn
_tcsstr wcsstr strstr
_tcstok wcstok
所以你的问题是混用了
char => strlen wchar_t => wcslen TCHAR -> _tcslen
全部回答
- 1楼网友:患得患失的劫
- 2021-04-27 07:59
x重复定义了吧追问嗯,我也觉得这个不太对。请问该怎么样修改呢?追答定义一个字符数组
char a[100];
cin>>a;
用strlen(a)来计算长度
char a[100];
cin>>a;
用strlen(a)来计算长度
- 2楼网友:几近狂妄
- 2021-04-27 07:08
wcslen 是计算“宽字符串”长度的..
char 是单字符 wchar 是双字符 是字符 不是字符串。
改成
wchar_t x[10];
就OK了
char 是单字符 wchar 是双字符 是字符 不是字符串。
改成
wchar_t x[10];
就OK了
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯