| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 13256 人关注过本帖
标题:结构体数组的长度(类似于数组的元素个数)怎么精确获取
只看楼主 加入收藏
飞机火车
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2017-1-23
结帖率:80%
收藏
已结贴  问题点数:10 回复次数:9 
结构体数组的长度(类似于数组的元素个数)怎么精确获取
类似于strlen()的一个函数,但是对象是结构体。我百度过了,那些方法不太精确
搜索更多相关主题的帖子: 结构体 元素 
2017-04-09 19:41
renkejun1942
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:不是这样
等 级:贵宾
威 望:33
帖 子:1645
专家分:5297
注 册:2016-12-1
收藏
得分:3 
跟普通数组还不一样,普通数组怎么计算,结构中数组的元素个数也怎么获取。

假设结构为N, 其中M为数组。

sizeof( N.M) / sizeof(N.M[0])

09:30 05/21 种下琵琶种子,能种活么?等待中……
21:50 05/27 没有发芽。
20:51 05/28 没有发芽。
23:03 05/29 没有发芽。
23:30 06/09 我有预感,要发芽了。
2017-04-09 19:43
qdcs
Rank: 6Rank: 6
等 级:侠之大者
威 望:5
帖 子:171
专家分:458
注 册:2016-12-22
收藏
得分:3 
“类似于strlen()的一个函数,但是对象是结构体” 你是想编一个程序,还是想编个函数?都没啥意思

我是硬件工程师
2017-04-09 20:20
飞机火车
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2017-1-23
收藏
得分:0 
回复 3楼 qdcs
我只是想获得结构体的个数,没意思我提出来干嘛

没有解决不了的事情,除非逻辑本身是错的
2017-04-10 08:29
飞机火车
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2017-1-23
收藏
得分:0 
回复 2楼 renkejun1942
可能我描述的不够准确,我意思是算结构体的个数;
比如定义了struct code arr[50]  ,但用不了那么多,求它的实际个数

没有解决不了的事情,除非逻辑本身是错的
2017-04-10 08:32
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:3 
以下是引用飞机火车在2017-4-10 08:32:16的发言:

可能我描述的不够准确,我意思是算结构体的个数;
比如定义了struct code arr[50]  ,但用不了那么多,求它的实际个数

是数组单元个数吗?如视同 int arr[50],只是类型不同。
2017-04-10 08:40
飞机火车
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2017-1-23
收藏
得分:0 
回复 6楼 吹水佬
是的!

没有解决不了的事情,除非逻辑本身是错的
2017-04-10 08:43
飞机火车
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2017-1-23
收藏
得分:0 
在结构体里面设置了一个整型标志,用到那个结构体时就赋值X,构造一个int型函数来返回它的数量
int SumSruct(void)
{
    int i=0,Sum=0;
    for(i=0;i<60;i++)
    {
        if(Student[i].Label==99)  //99是我设置的X
        {
            Sum++;
        }
    }
    return Sum;         //返回长度
}

那些用sizeof来算的终究只是字节长度而不是个数,很多情况下不准确

没有解决不了的事情,除非逻辑本身是错的
2017-04-10 09:00
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
使用数组通常都有个计数器

for (i=0; a[i]; i++)
   if (....)
       break;   
i是计数器,用了多少个就清楚。
2017-04-10 11:39
飞机火车
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2017-1-23
收藏
得分:0 
回复 9楼 吹水佬
恩就是这种方法

没有解决不了的事情,除非逻辑本身是错的
2017-04-10 12:53
快速回复:结构体数组的长度(类似于数组的元素个数)怎么精确获取
数据加载中...
 
   



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

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