如何解决为什么我们在访问动态数组的值时不使用 (*) ?
我们的教授教我们在访问动态变量时使用间接运算符 (*)。因此,我不明白为什么代码是这样写的:
cout << arr[i];
而不是这样:
cout << *arr[i];
完整代码如下:
#include <iostream>
using namespace std;
int main()
{
int size;
int *arr;
cout << "Please enter size: ";
cin >> size;
arr = new int[size];
cout << "Enter " << size << " items" << endl;
for (int i = 0; i < 5; i++)
{
cin >> arr[i];
}
cout << "You entered: ";
for (int i = 0; i < 5; i++)
{
cout << arr[i] << " ";
}
}
解决方法
对于像你这样的数组:
arr = new int[size];
语法:
arr[5];
相当于:
*(arr+5)
只是更好看。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。