首页 > 后端开发 > C++ > 正文

为什么 C 在通过引用传递二维数组时会抛出'在 '*' 标记之前预期的 ',' 或 '...'”?

Linda Hamilton
发布: 2024-11-06 00:41:02
原创
1007 人浏览过

Why Does C   Throw

传递对二维数组的引用

问题

尝试将对二维数组的引用传递给函数时C 中,用户可能会遇到来自 g 的错误“在 '*' 标记之前预期有 ',' 或 '...'”。问题来了:这个错误表明什么以及如何解决?

解决方案

该错误表明 do_something() 的函数原型不正确。要在编译时传递对已知维度的二维数组的引用,应使用以下语法:

<code class="cpp">void do_something(int (&array)[board_width][board_height]);</code>
登录后复制

将参数声明为 int array[board_width][board_height];相反,将传递一个指向数组的第一个子数组的指针,这在本例中不是所需的功能。

说明

引用语法 &array 确保实际数组通过引用,允许函数直接修改数组的内容。符号 int (&array)[board_width][board_height] 指定参数数组是对维度为 board_width 和 board_height 的二维数组的引用。

相比之下,int array[board_width][board_height] ;将参数数组声明为指向 board_height 整数的一维数组的指针,从而忽略数组的第二个维度。这会导致报告错误,因为语法不正确。

以上是为什么 C 在通过引用传递二维数组时会抛出'在 '*' 标记之前预期的 ',' 或 '...'”?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!