strlen函数测二维数组长度

假设有一个二维字符型数组a[10][100].
书上说,一个二维数组可以看成多个一位数组。这题应该能看成10个长度为100的一维数组。
我用strlen(a[10])来求第十个数组的长度,结果长度明明只有几位,出来的数字却变成了几千,为什么啊?
这种方法不行的话,那我又应该怎样得到二维数组中的某一个数组的长度呢?
本人刚接触程序,而且只看得懂C++的代码。
求高手指教。。
a[10]已经越界了。第十个数组搜知槐的长度是a[9]的长度。
a包括10个一维字符数组,从a[0] ~ a[9]
你看的a[10]已经越界,里面是个不确定的值。
而strlen函数是统猛衫计从指针开始处到遇到结束符'\0'的长度。。。
由于strlen的参数a[10]开始的内存块中的每个值不确定。。。所以。。得出的值世友。。没有意义
如果你 strlen(a[0])到strlen(a[9])是没有问题的。。
这位兄弟,你可以这样思考,第十个求不出来,那第五个第四个。。。有没有可能求出来呢?简单地说就是把【】里面的10改成十以内的任何自然数试试看,看结果还是不是几千或者什么的。这是解决这个问题的一个思路,如果你懂了的话,就应该知道答案了。
另外,或许你刚刚接触数组这个概念,对内侍碧谈存溢出、数组越界这些老碰概念还是不很了解,你要知道,a[10]在这里的运用慧备显然是有问题的,这个也是出现几千什么的结果的本质原因所在,自己慢慢琢磨吧。
a[10]越界了,a[9]你试试。
我没有考配册虑过你的问题,不过我向咐卖戚尝试一下。
string str;
cin>>str;
int count=0;
char * temp=str; //这里可能存在问题,你试试
for(int i=0;&(temp++)!=NULL;temp++)
{
count ++; //for循环也不衡陵知道对不对,不过你百度一下
//这些东西很容易
}
cout<<count;
可以写下你的过程,我测试了一下,没有几千啊。