淡淡会遗忘 2022-02-18 14:52 采纳率: 90.9%
浏览 64
已结题

形参求数组长度结果对不上

#include <stdio.h>

int  length(int* parr)
{
    int len=0;
    while(*parr!='\0')
    {
        len++;
        parr++;    
    }
    return len;
}


int main()
{
    int arr[]={10,9,8,7,6,5,4,3,2,1};
    int m=length(arr);
    int n=sizeof(arr)/sizeof(arr[0]);
    printf("%d\n",m);      //结果11 
    printf("%d\n",n);      //结果10     
    return 0;    
} 

想写个函数,通过函数来求传入的数组的长度,但发现结果不对,我的目的是想让length函数返回的结果为数组arr的长度,也就是10,有没有人帮忙看看,我方法哪弄错了,怎么改?

  • 写回答

2条回答 默认 最新

  • 谛凌 2022-02-18 15:17
    关注

    题主你是想求数组长度,而不是里面有效元素数,对吗

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

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 2月19日
  • 已采纳回答 2月18日
  • 创建了问题 2月18日

悬赏问题

  • ¥15 树莓派5怎么用camera module 3啊
  • ¥20 java在应用程序里获取不到扬声器设备
  • ¥15 echarts动画效果的问题,请帮我添加一个动画。不要机器人回答。
  • ¥15 Attention is all you need 的代码运行
  • ¥15 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗
  • ¥15 使用esm_msa1_t12_100M_UR50S蛋白质语言模型进行零样本预测时,终端显示出了sequence handled的进度条,但是并不出结果就自动终止回到命令提示行了是怎么回事:
  • ¥15 前置放大电路与功率放大电路相连放大倍数出现问题
  • ¥80 部署运行web自动化项目
  • ¥15 腾讯云如何建立同一个项目中物模型之间的联系
  • ¥30 VMware 云桌面水印如何添加