问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

关于在C语言 声明带有一个变长数组参数的函数

发布网友 发布时间:2023-05-26 09:35

我来回答

5个回答

热心网友 时间:2024-10-08 03:23

在C语言中,函数中要用数组做参数,可以采用三种方式,其中后两种均可适用于变长数组参数。
1 直接以定长数组做参数,声明形式为:
ret_type func(int a[100]);
这里就是以100个元素的数组做参数的。

2 声明时不带长度,即:
ret_type func(int a[]);

3 以指针替代数组,即:
ret_type func(int *a);

2,3两种均可以用于变长数组。不过这种情况下,需要与函数约定数组长度的确定方法,比如约定规模 ,约定结束值,增加额外参数传长度,在数组元素中包含长度,或采用全局变量传长度等等。

热心网友 时间:2024-10-08 03:24

#include <stdio.h>
int sum2d(int rows, int cols, int ar[][3]) //数组作为形参,传递的是地址,即数组名,
//对于二维数组,通常列数必须是常数,行数为空
//但一般数组地址的传递使用指针
{
int r;
int c;
int tot = 0;

for(r=0; r<rows; r++)
for(c=0; c<cols; c++)
tot += ar[r][c];
return tot;
}
void main()
{
int x;
int a[2][3]={1,2,3,4,5,6};
x=sum2d(2,3,a);
printf("%d\n",x);
}

热心网友 时间:2024-10-08 03:24

int ar[rows][cols]: 二维数组作参数时,你这里的rows和cols一定要是常数!

expected constant expression ====> understand?

热心网友 时间:2024-10-08 03:25

二维数组做函数参数时,形参的语法形式是:类型说明符 形参名[ ][常量表达式M]
形参数组可以省略一维的长度。
由于实参代表了数组名,是"地址传递",二维数组在内存中是按行存储的。在形参中,就必须指明列的个数,才能保证实参数组与形参数组中的数据一一对应,所以,形参数组中第二维的长度是不能省略的。
调用函数时,与形参数组相对应的实参数组必须也是一个二维数组,而且它的第二维的长度与形参数组的第二维的长度必须相等。
函数sum2d(int rows, int cols, int ar[rows][cols]) 的第三个参数数组ar的第二维必须给一个常数。

热心网友 时间:2024-10-08 03:25

确认两个问题:
1.你建的工程是不是对的?
2.你的和这个调用函数,是在哪调用的,调用的时候,传入的参数是什么?

这些错误主要是一些参数不对,或者定义的数组不完全所致的!
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
父母残疾,带病出生的庞众望,744分考上清华,7年后咋样了 父亲精神病母亲瘫痪,寒门庞众望四年前考入清华,如今怎样了? 鬼谷八荒魅力最高是什么 怎么捏脸到仙姿 鬼谷八荒如何减魅力 北京八维学校好吗是真的吗 八维学校是不是传销? 北京八维学校的招生体系是传销吗? 自圆其说的意思自圆其说 沐澄什么意思 键盘按键错乱。按I出现IO,反正全都不正确吗,前几分中上QQ还能用,电脑卡... 求助,一点activate就停止工作什么意思 ...一点就显示无法响应,不点要等好久才会有反应,压根没法工作... C语言变长数组问题求解 资本合计是什么 发蜡的意思发蜡的意思是什么 听筒录音可以做遗产公证吗? 录音证据需要公证吗 梦见很多奔驰的马的预兆 丹东话的概述 丹东话的介绍 你在干什么,我的主打歌 梦见小孩光脚的预兆 九华山二日游最佳线路 请问徐州大龙湖现在还能带狗狗进去吗 上海奉贤天街营业时间 重庆龙湖时代天街可以带狗吗? ai自动写作怎么实现?ai辅助写作在哪? 所谓心理学中自动书写是何种情况下产生的、 提倡自动写作的文学流派是 什么叫自动写作法 为什么有时候不想上班? 推搡怎么读拼音 85年属牛2021年每月运势 重点关注月份? 属牛人2021年每月财运解析 四月份可能有意外事故发生? 1997年属牛2021年运势每月运程解析? 2021年生肖牛农历二月运程与运势? 哈弗h6t一box故障什么意思? 如果一个人把你的备注改为老大是什么意思 为什么我追的女生让我改备注成老大? 一个男人把他老婆的备注改成老大含义 升力运动是指关节在什么范围内发生的运动? 丰田故障指示灯(警告蜂鸣器)图标亮了说明什么? 丰田考斯特仪表显示刹车灯亮蜂鸣器长想什么原因? 丰田蜂鸣器原理 我国的禁毒方针是什么 闹闹职场上霸气出众但对恋人却极尽温柔的星座 创业实训理念是什么 研判力要利用好哪三个要素 受害者思维,太可怕 雯华的解释雯华的解释是什么