读书人

,小疑点,字符数组长度

发布时间: 2012-03-22 17:43:57 作者: rapoo

呵呵,小问题,字符数组长度.
比如:
char *c=new char [20];
strcpy(c, "abcdef ")
这样,如果strlen(c)将得到6
sizeof(c)得到4

我想得到分配时的长度,就是20.怎么做?

[解决办法]
自己找一个变量把这个20保存下来即可。
当然,用vector取代数组是最佳方案。
[解决办法]
#include "stdio.h "
#include "string.h "

void main()
{
char test[20];
strcpy(test, "ABCD ");
printf( "sizeof test is %d\n ", sizeof(test));
}
-------------
Output

sizeof test is 20
-------------
请给分,谢谢
[解决办法]
当需要一个数组的大小时候,一般都用单独的变量保存下来,或者通过参数传递。
[解决办法]
你的要求C++不能满足。

读书人网 >C++

热点推荐