鱼C论坛

 找回密码
 立即注册
查看: 1895|回复: 8

[已解决]照着小甲鱼的视频代码敲,竟然出现十多个错误?

[复制链接]
发表于 2021-2-27 13:47:59 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. #include <iostream>
  2. using namespace std;

  3. int addArray(int array[], int n);

  4. int main()
  5. (
  6.         int data[] = { 0,1,2,3,4,5,6,7,8,9 };
  7.         int size = sizeof(data) / sizeof(data[0]);

  8.         printf("结果是:%d\n", addArray(data, size));

  9.         return 0;
  10.         )

  11. int addArray(int array[], int n)
  12.         (
  13.                 int sum = 0;
  14.                 int i;

  15.                 for (i = 0; i < n; i++)
  16.                 {
  17.                         sum += array[i];
  18.                 }
  19.                 return sum;
  20.         )
复制代码


2021-02-27_134512.png

这是什么一回事啊?求大佬帮助
最佳答案
2021-2-27 13:55:04
函数后面()然后函数体跟的是大括号

  1. #include <iostream>
  2. using namespace std;

  3. int addArray(int array[], int n);

  4. int main()
  5. {
  6.         int data[] = { 0,1,2,3,4,5,6,7,8,9 };
  7.         int size = sizeof(data) / sizeof(data[0]);

  8.         printf("结果是:%d\n", addArray(data, size));

  9.         return 0;
  10. }

  11. int addArray(int array[], int n)
  12. {
  13.         int sum = 0;
  14.         int i;

  15.         for (i = 0; i < n; i++)
  16.         {
  17.                 sum += array[i];
  18.         }
  19.         return sum;
  20. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-2-27 13:55:04 | 显示全部楼层    本楼为最佳答案   
函数后面()然后函数体跟的是大括号

  1. #include <iostream>
  2. using namespace std;

  3. int addArray(int array[], int n);

  4. int main()
  5. {
  6.         int data[] = { 0,1,2,3,4,5,6,7,8,9 };
  7.         int size = sizeof(data) / sizeof(data[0]);

  8.         printf("结果是:%d\n", addArray(data, size));

  9.         return 0;
  10. }

  11. int addArray(int array[], int n)
  12. {
  13.         int sum = 0;
  14.         int i;

  15.         for (i = 0; i < n; i++)
  16.         {
  17.                 sum += array[i];
  18.         }
  19.         return sum;
  20. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2021-2-27 13:58:31 | 显示全部楼层
本帖最后由 心驰神往 于 2021-2-27 14:28 编辑

(⊙o⊙)…
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-2-27 17:21:28 | 显示全部楼层
昨非 发表于 2021-2-27 13:55
函数后面()然后函数体跟的是大括号

粗心了。。。谢谢大佬!
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-2-27 17:30:28 | 显示全部楼层
昨非 发表于 2021-2-27 13:55
函数后面()然后函数体跟的是大括号

大佬,我再问一下这里面
int size = sizeof(data) / sizeof(data[0]);
为什么我直接用
int size = sizeof(data)
会得出的结果不对呢?
除以 sizeof(data[0])起到什么作用呢?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-2-27 17:33:17 | 显示全部楼层
YouCam 发表于 2021-2-27 17:30
大佬,我再问一下这里面
int size = sizeof(data) / sizeof(data[0]);
为什么我直接用

看看这个
【C++】当sizeof遇到数组、数组名和指针
https://fishc.com.cn/thread-190780-1-1.html
(出处: 鱼C论坛)
大概就是一个道理
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-2-27 17:33:44 | 显示全部楼层
昨非 发表于 2021-2-27 13:55
函数后面()然后函数体跟的是大括号

int size = sizeof(data) 的结果竟然是40?这是什么原因?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-2-27 17:41:27 | 显示全部楼层
YouCam 发表于 2021-2-27 17:33
int size = sizeof(data) 的结果竟然是40?这是什么原因?

因为一个整型4字节啊
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-2-27 17:59:45 | 显示全部楼层
昨非 发表于 2021-2-27 17:41
因为一个整型4字节啊

懂了 懂了 ,我以为sizeof 用法是说数组里面有多少个元素,原来不是这个意思。
sizeof 指的是数据占的空间大小,也就是多少个字节,这下我明白了!
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-7-13 18:06

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表