Я только что осознал ошибку моих путей в небольшом количестве кода, который заполняет двухмерный массив ac 2.
Я объявил массив следующим образом:
int myArray[5][5];
..но по ошибке установите значение с помощью:
*myArray[3,4] = 10;
.. когда это должно было быть:
myArray[3][4] = 10;
Хорошо, первая строка является ошибкой, но она компилировалась и работала, хотя и с оченьстранные результаты.(то есть, когда я пытался распечатать содержимое * myArray [3,4], в нем было неверное значение)
Может кто-нибудь объяснить, что именно делает этот первый оператор присваивания ?
edit: Первоначально я пытался использовать:
myArray[3,4] = 10;
.., что приводило к ошибке компилятора, когда я пытался присвоить тип int типу * int.Я предполагаю, что он оценил 3,4 к 4 согласно ответу ниже и решил, что я пытался добавить 4 к указателю, поэтому должен использовать адресацию указателя для доступа к массиву.