wdkbook 2019-09-13 21:09 采纳率: 100%
浏览 332
已采纳

C++为什么不支持复合文字,因为不好跨类调用?

#include

#define COLS 4

int main()
{
int total;
int(*pt)[COLS];
pt = (int[2][COLS]) { {1, 2, 3, 4}, { 5,6,7,8 } };
total = sum(pt, 2);
printf("total=%d\n", total);
return 0;
}

int sum(int ar[][COLS], int rows)
{
int r, c;
int tot = 0;
for (r = 0; r < rows; r++)
for (c = 0; c < COLS; c++)
tot += ar[r][c];
}

  • 写回答

2条回答 默认 最新

  • 无形有道 2019-09-14 21:45
    关注

    两处错误:
    1)sum函数在使用之前未声明或定义;
    2)sum函数缺少返回值。

    解决办法:
    1)在main函数之前声明sum函数原型,即添加 int sum(int ar[][COLS], int rows); (或者将下面的sum函数移动到main函数之前也行)
    2)在sum函数体末尾添加 return tot;

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

报告相同问题?

悬赏问题

  • ¥15 本题的答案是不是有问题
  • ¥15 关于#r语言#的问题:(svydesign)为什么在一个大的数据集中抽取了一个小数据集
  • ¥15 C++使用Gunplot
  • ¥15 这个电路是如何实现路灯控制器的,原理是什么,怎么求解灯亮起后熄灭的时间如图?
  • ¥15 matlab数字图像处理频率域滤波
  • ¥15 在abaqus做了二维正交切削模型,给刀具添加了超声振动条件后输出切削力为什么比普通切削增大这么多
  • ¥15 ELGamal和paillier计算效率谁快?
  • ¥15 蓝桥杯单片机第十三届第一场,整点继电器吸合,5s后断开出现了问题
  • ¥15 file converter 转换格式失败 报错 Error marking filters as finished,如何解决?
  • ¥15 Arcgis相交分析无法绘制一个或多个图形