指针和数组并不是完全互换的
1 #include <iostream> 2 3 using namespace std; 4 const int MAX = 3; 5 6 int main () 7 { 8 int var[MAX] = {10, 100, 200}; 9 10 for (int i = 0; i < MAX; i++) 11 { 12 *var = i; // 这是正确的语法 13 var++; // 这是不正确的 14 } 15 return 0; 16 }
把指针运算符 * 应用到 var 上是完全可以的,但修改 var 的值是非法的。这是因为 var 是一个指向数组开头的常量,不能作为左值。
下面是一个有效的语句,把 var[2] 赋值为 500:
*(var + 2) = 500;
标签:int,MAX,C++,vs,数组,var,指针 From: https://www.cnblogs.com/uacs2024/p/18047804