Я использую: Windows 10, C++, Visual Studio 2013.C++ макрос с 2D массива
Я ищу способ получить доступ к моей 2D-массив с отрицательными числами, например, я знаю, что это работает 1D-массив-:
int myarray[35];
#define a (myarray + 50)
a[-45] = 0; //accesses myarray[5]
, но не могу понять, как заставить его работать с 2D-массив:
int foo[32][32]
#define bar (foo + 50)(foo + 50)
// The above does not work
Это не делает тонну смысла. Даже с вашим 1D-массивом, если вы получаете доступ к 'a [-5]', вы выполнили запрос за пределами границ. –
Зачем нужно -45 дать вам товар 5? Это не имеет никакого смысла. – Lundin
Из-за определения в строке выше .. он работает .. –