http://blog.csdn.net/songjinn/article/details/17194855
在VC++编程中经常需要判断char类型数组的长度,以下代码可供参考。
windows系统下可以使用_mbslen函数
C/C++ code ? 1 2 3 4 5 6 7 8 9 #include <stdio.h> #include <mbstring.h> int main( void ) { const char *p= "abc中国" ; int n=_mbslen((unsigned char *)p); printf ( "%d\n" ,n); } 输出是5
注:该代码参考自:http://bbs.csdn.NET/topics/320095859(20楼的回复)
以上代码证实可用。
这段代码声明的是char类型的指针,与char类型数组类似,在使用时都要进行强制类型转换,下面贴出char类型数组的代码:
[cpp] view plain copy char szTestLen[MAX_PATH]; wsprintf(szTestLen, "qazwsx;.//"); cout<<_mbslen((unsigned char*)szTestLen);
输出是10