藏猊 2022-03-29 16:52 采纳率: 57.1%
浏览 90
已结题

c不知道整型数组长度的情况下怎么遍历数组

如题,
用函数处理整型数组,但只能传递数组头指针.
然而通过头指针我没办法获取数组长度啊,

sizeof(list) / sizeof(list[0]); //结果永远是1

这样怎么才能遍历数组?

  • 写回答

3条回答 默认 最新

  • 於黾 2022-03-29 16:55
    关注

    如果你传入的是指针而不是数组类型
    你应该多加一个变量,同时传入长度
    否则鬼知道数组到底多长
    而且数组类型是不可变长度的,所以一般定义的时候都会稍大,没有那么正好的,里面大概率并不是所有的元素都存放着数据
    所以不管你传一个数组类型进来还是一个数组指针,其实都应该再传一个int
    告诉函数到底有多少数据需要处理
    -=-=-=
    举个例子
    你要写个函数,找到数组里面的最小值
    正常最小值比方说是5吧
    可是你数组长度是100,其中只有前10个有数据,后面都是0
    那你无脑遍历整个数组,就会认为最小的数据是0
    -=-=-=-
    所以说,遍历数组就是个伪问题,数组就不应该遍历,就必须传入一个数来限制循环次数,而不是从头循环到尾

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 4月8日
  • 已采纳回答 3月31日
  • 创建了问题 3月29日

悬赏问题

  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度