在C++中输出几多是正确的

在C++中输出多少是正确的?
void testLen(char *pObj)
{
std::cout<<strlen(pObj)<<std::endl;
}
int _tmain(int argc, _TCHAR* argv[])
{
char szRet[100];
testLen(szRet);
return 0;
}


已知两个值:
111和104。怎么取到100

------解决方案--------------------
std::cout<<strlen(pObj)<<std::endl;
应该输出多少都不正确,szRet[100];可能任何一个单元可能都不为0,找到的非法的位置,你要对其初始化后,才能有正确的值
------解决方案--------------------
引用:
void testLen(char *pObj)
{
std::cout<<strlen(pObj)<<std::endl;
}
int _tmain(int argc, _TCHAR* argv[])
{
char szRet[100];
testLen(szRet);
return 0;
}


已知两个值:
111和104。怎么取到100
楼主为什么只声明数组,却没有初始化呢?太不严谨了,建议用memset()初始化一下,然后再去判断一下,像你那样做,很可能造成元素内容的不确定性。