Мы можем инициализировать такой массив:
int myArray[][] = { {10,20},{30,40}, {50} };
Это работает нормально.
Но столкнулся со своеобразной ситуацией.
int myAnotherArray[][] = { {,},{,}, {,} };
Приведенная выше строка кода прекрасно компилируется . Это по-моему странно. Потому что, когда компилятор будет анализировать этот оператор, он встретит {
, ,
и }
все вместе. Разве компилятор не должен ожидать константу или промежуточный литерал? Я был бы признателен, если бы кто-нибудь сказал мне, как именно анализируется приведенное выше выражение и что именно делает компилятор, когда он сталкивается с такой ситуацией.