小编Tol*_*ga 的帖子

在数组中向后计数。[-1]

当我想改变数组的最后一个元素时,我总是使用[-1]作为最后一个元素。

#include <iostream>
using namespace std;
int main(){
    int arr[10]{};
    arr[0]=10;
    arr[-1]=100;
    cout<<arr[-1]<<endl;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

然后我的老师说:“ C ++不支持数组的这种行为。我应该使用arr [9]作为最后一个元素,而“ arr [-1] = 100”实际上将在其中一个元素之前的区域中存储1000。数组开始。这会导致崩溃,因为该值超出了数组的范围。” 有人可以解释为什么吗?

注意:我是python程序员。当我在列表中使用-1时,我在python中没有问题。C ++有不同的条件吗?

c++ arrays c++17

0
推荐指数
1
解决办法
83
查看次数

标签 统计

arrays ×1

c++ ×1

c++17 ×1