Я пытаюсь выполнить следующий фрагмент кода, который должен печатать содержимое глобального массива. Но почему цикл for
никогда не вводится?Печать содержимого глобального массива с использованием цикла не производит вывод
#include <stdio.h>
#define TOTAL_ELEMENTS (sizeof(array)/sizeof(array[0]))
int array[] = {23, 34, 12, 17, 204, 99, 16};
int main()
{
int d;
for(d = -1; d <= (TOTAL_ELEMENTS - 2); d++)
printf("%d\n", array[d + 1]);
return 0;
}
Почему так сложно? is 'for (d = 0; d
Olaf
Как вы знаете, что это не выполнено? Что говорит отладчик? Код запутан, но выглядит нормально. – Olaf
Я думаю: d повышается до unsigned int из-за определения unsigned. Тогда -1 стал MAX без знака int – LPs