怎么获取一个数组里面实际有多少个元素?

zyp_alex 2012-03-05 04:31:32
运行环境是 VC++6.0;
例如:我定义一个数组char string[20];
接着我在这个数组里面输入:abcdefg;
现在我需要一个函数能获得现在string[]里面实际的元素个数;
当我用sizeof函数时,他只能输出这个数组最多能容纳多少个元素;
小弟是新手,在线求指点!!!
...全文
1017 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
灼眼的超哥 2012-03-05
  • 打赏
  • 举报
回复
数组?还是字符串?
字符串的话,用strlen函数计算字符串长度。
数组的话,空间有多大,就有多少元素。
xiyoulaoyuanjia 2012-03-05
  • 打赏
  • 举报
回复

[Quote=引用 1 楼 zhoujielunzhimi 的回复:]

#include <string.h>
int n = strlen(string);
看来LZ的C语言不行啊
[/Quote]

提醒lz 在使用strlen时一定要注意string 的末尾一定要还有‘\0’结束,也就是其存放的要是c 语言版本的字符串字面值。
还有lz要自己写的计数器如下
int main(int argc, char* argv[])
{

char *p="fafafa";
int count=0;
while((count++,*p++!='\0'))
;
cout<<count<<endl;
return 0;
}





zyp_alex 2012-03-05
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zhoujielunzhimi 的回复:]

#include <string.h>
int n = strlen(string);
看来LZ的C语言不行啊
[/Quote]

呵呵 惭愧啊 的确不怎么样 谢谢帮助 不过看楼下那个自己写计数器 能具体说下么?
langshanglibie 2012-03-05
  • 打赏
  • 举报
回复
strlen
vanxeger 2012-03-05
  • 打赏
  • 举报
回复
楼上两位都不错啊!都可以解决问题,我比较倾向于计数器
jihai123 2012-03-05
  • 打赏
  • 举报
回复
你自己写计数器不行么
sumos 2012-03-05
  • 打赏
  • 举报
回复
#include <string.h>
int n = strlen(string);
看来LZ的C语言不行啊

64,652

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧