挑战实验:多维数组

在本次挑战实验中,你的编译器需要支持理论上任意多维度的数组。

参考与帮助详见 lab7、lab8,语义约束基本保持一致

语义约束

FuncFParam 与实参

  • FuncFParam 为数组定义时,其第一维的长度省去(用方括号 [] 表示),而后面的各维则需要用表达式指明长度,长度是编译时可求值的常量表达式。
  • 可以将多维数组的一部分传到形参数组中,如定义了 int a[2][3][4][5],可以将 a[1][2] 作为一个第一维长度为 4,第二维长度为 5 的二维数组数组传递给类型为 int[][5] 的形参。

注意事项

本次实验的评测标识符为 mdarray,即你的 judge.toml 第一行应改为 [jobs.mdarray]

你需要认真编写挑战实验的实验报告,详细说明你是如何完成本次挑战实验的,你对你的编译器进行了哪些改动,你参考了哪些资料,并尽可能完整地阐述你的编译器完成挑战实验任务的工作流程。如果实验报告的内容含糊不清,无法证明你独立完成本次实验,违反 诚信 原则,我们会酌情扣分。当然,你也需要适当地精简语言,我们对实验报告的评定点在于扣分,写出特别长的实验报告(如纯文字内容超过 7 页)并不意味着你能得到加分。

  • 实验评测截止时间:2022 年 1 月 7 日 23:59
  • 实验报告命名格式:学号_姓名_multiDimension.pdf
  • 实验报告提交:北航云盘 挑战实验/ 对应班级目录中
  • 实验报告提交截止时间:2022 年 1 月 9 日 23:59

results matching ""

    No results matching ""