Редактировать:
Я полностью пересмотрел свой вопрос, поскольку у меня есть лучшее представление о том, что я хочу сделать.
#include <iostream>
#include <cstdlib>
using namespace std;
int main(){
const int max_rows = 10;
const int max_cols = 10;
int *test = new int[max_rows * max_cols];
for(int i = 0; i < 100; i++){
test[i] = 1 + (rand() % 100);
}
for(int i = 0; i < 100; i++){
cout << "#" << i << " " << test[i] << endl;
}
int *b = &test[0];
cout << *b << endl;
int *x = b + (i * sizeof(int) * max_cols) + (sizeof(int) * j);
cout << *x << endl;
return 0;
}
test - это мой двумерный массив.
* x должен содержать адрес test[i][j]
(предположим, что в моем коде есть cin >> i и cin >> j).
где i - строка, а j - столбец, который я хочу.
Но, похоже, он не дает мне правильный адрес. Если я не глуп и не читаю это неправильно.
Это способ, которым мне сказали решить проблему.