我们刚刚遇到并解决了一个问题,当我们包含访问某些大型数组的某些代码时,RAM会飙升。这导致了以下问题:我显然是在误解,认为C编译器会排除未调用的函数,但不会排除在文件级别声明但未被触及的数组。我想这在世界范围内是可行的,但是我敢肯定,我已经看到了不同的行为,只是创建了一个数组,并观察了RAM使用率的跳跃(而无需编写涉及该数组的代码)。这是特别的。令人震惊,因为我们处于零优化状态。
因此,在这里要学习正确的课程:是未被触及的数组,永远不会被编译器排除,或者有时会被编译器排除。它取决于编译器和优化级别,还是某种程度上与C标准要求联系在一起?我疯了吗,还是大多数编译器似乎not排除了它们?谢谢。
我们刚刚遇到并解决了一个问题,当我们包含访问某些大型数组的某些代码时,RAM会飙升。这导致了以下问题:我显然在...