gpt4 book ai didi

c++ - 不明白 array-1 是什么意思

转载 作者:行者123 更新时间:2023-11-30 18:17:00 25 4
gpt4 key购买 nike

我在理解这段代码时遇到问题,尤其是“vet-1”部分。这是什么意思?它返回数组的哪一项?

我在大学一年级练习考试时发现了这个练习,我想知道它是否有解决方案。这不是我自己的代码。谢谢!

#include <stdlib>
#include <iostream>

using namespace std;

void change(int m, int n[7]);

int main(){
int vet[] = {1, 2, 3, 4, 5};
change(vet[4], vet-1);
change(0, &vet[4]);
int i = 0;
for (i=0; i<5; i++) cout << vet[i];
return 0;
}

void change(int m, int n[7]) {
(*(n+m))--; m++; n--;
}

最佳答案

vet - 1 尝试引用指向 vet[0] 之前元素的指针。

实际上,这样做的行为是未定义的。所以整个程序是未定义的。

这里没什么好理解的;继续前进!

关于c++ - 不明白 array-1 是什么意思,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50738156/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com