+ 1
How to change the variable in a speceific place in an array stored in the heap? (C++)
Does anybody know how to change the value of an item of an array when the array is in the heap, y have tried with: pointer = new int[2]; *pointer [0] = 0; *pointer [1] = 1; cout << *pointer[0] << " and " << *pointer [1] << endl; delete []pointer; according to code blocks there are errors in the 2, 3 and 4 lines. obviously I have the main declaration, the include <iostream>, the using namespace std, the return 0 and everything. please help!!! [Closed]
3 Answers
+ 2
p[0] is the same as *p
p[1] is the same as *(p+1)
*p[0] is the same as **p
So don't do that here :)
int* p = new int[2];
p[0] = 7;
p[1] = 4;
std::cout << p[0] << " " << p[1] << std::endl;
delete[] p;
+ 1
Try changing it to:
*(pointer +1)
and
*pointer
where you wrote *pointer[1] and *pointer[0]
...Though it's not necessary, you have [] for this.
0
Thanks Jamie, but the code provided by Dennis worked (by the way, thanks Dennis)