| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 364 人关注过本帖
标题:求元素个数
只看楼主 加入收藏
我很恨你
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2012-12-24
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:2 
求元素个数
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
    int values[]={1,2,0,5,4,6,9,8,7,3};
    int len=sizeof(values);
    int i;
    for(i=0;i<10;i++)
        cout<<setw(3)<<values[i];
    cout<<endl<<endl;
    cout<<len<<endl;
}
这是程序的一部分,但是求得的元素个数不对,请问是怎么回事
搜索更多相关主题的帖子: namespace 元素 include values 
2013-04-14 16:11
邓士林
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:淮河河畔
等 级:贵宾
威 望:61
帖 子:2392
专家分:13384
注 册:2013-3-3
收藏
得分:15 
因为你的数组是int型的,然后有10个元素,一个int占四个字节,所以四十个。这样就对了int len=sizeof(values)/sizeof(int);

[ 本帖最后由 邓士林 于 2013-4-14 16:49 编辑 ]

Maybe
2013-04-14 16:46
邓士林
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:淮河河畔
等 级:贵宾
威 望:61
帖 子:2392
专家分:13384
注 册:2013-3-3
收藏
得分:5 
你看看这个:
Sizeof与Strlen的区别与联系(转)1.sizeof操作符的结果类型是size_t,它在头文件中typedef为unsigned int类型。该类型保证能容纳实现所建立的最大对象的字节大小。 2.sizeof是算符,strlen是函数。 3.sizeof可以用类型做参数,strlen只能用char*做参数,且必须是以''\0''结尾的。sizeof还可以用函数做参数,比如: short f();printf("%d\n", sizeof(f()));输出的结果是sizeof(short),即2。 4.数组做sizeof的参数不退化,传递给strlen就退化为指针了。

Maybe
2013-04-14 16:51
快速回复:求元素个数
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023029 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved