首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

,小疑点,字符数组长度

2012-03-22 
呵呵,小问题,字符数组长度.比如:char*cnewchar[20]strcpy(c, abcdef )这样,如果strlen(c)将得到6sizeo

呵呵,小问题,字符数组长度.
比如:
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++不能满足。

热点排行