网页
资讯
视频
图片
知道
文库
贴吧
地图
采购
进入贴吧
全吧搜索
吧内搜索
搜贴
搜人
进吧
搜标签
日
一
二
三
四
五
六
签到排名:今日本吧第
个签到,
本吧因你更精彩,明天继续来努力!
本吧签到人数:0
一键签到
成为超级会员,使用一键签到
一键签到
本月漏签
0
次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行
补签
。
连续签到:
天 累计签到:
天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
03月11日
漏签
0
天
c++吧
关注:
604,031
贴子:
2,108,018
看贴
图片
吧主推荐
游戏
13
回复贴,共
1
页
<<返回c++吧
>0< 加载中...
假期补补落下的c++
只看楼主
收藏
回复
威尔伯的世界
throw
3
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
二维数组怎么传参呢?我在编一个求二维数组的所有元素的和的程序,想问一下求和函数的参数用指针怎么表示?主函数调用时实参怎么写?这个二维数组在main()中定义时赋给了初值a[2][3]={{1,1,1},{2,2,2}}
威尔伯的世界
throw
3
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
我把形参设为(int **p,int a,int b),实参写为(a[0],2,3),在求和函数中有这样的语句sum+=p[]
北京百度网讯科技有限公司
泰国青草膏有什么功效?别担心,我们提供专业医疗服务,助您找回健康生活
2025-03-11 08:51
广告
立即查看
威尔伯的世界
throw
3
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
是sum+=p[i][j]显示这句有错误
威尔伯的世界
throw
3
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
看来是没人打算理我了
墨非踽踽独行
<
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
被数组值传递弄晕了的路过
敏敏妹妹
^
8
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
强制转换成一维指针就行了,其实二维指针也行,不过比一维麻烦
yjryym
+
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
既然是C++,为什么不用模板函数呢?
template <size_t S1, size_t S2>
inline 返回值 函数名(类型 (&arr)[S1][S2])
{
// 其中S1为第一维个数和S2为第二维个数
}
// 调用时:函数名(二维数组);即可,编译器会自动检测出数组大小。
hzqst
==
10
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
传一维指针+宽高
*(int *)(p + y*height +x )
hitmanxieyiran
,
1
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
"我把形参设为(int **p,int a,int b),实参写为(a[0],2,3),在求和函数中有这样的语句sum+=p[]"
不知道我有没有理解对.你在定义里给形参设置的是二维数组(指针),但是实际传入的a[0]却是一维指针(a[0]实际就是*(a + 0),可以看到已经解引用了一次,由二维指针变成了一维指针),当然不对了.
int GetSum(int **input, int length1, int length2)
{
if(input == NULL || *input == NULL);//invalid argument, do sth..
int sum = 0;
for(int i = 0 ; i < length1 ; i ++) for(int j = 0 ; j < length2 ; j ++)
sum += input[i][j]
return sum;
}
调用时,input处实参应该为你的"a"
登录百度账号
扫二维码下载贴吧客户端
下载贴吧APP
看高清直播、视频!
贴吧页面意见反馈
违规贴吧举报反馈通道
贴吧违规信息处理公示