История изменений
Исправление arkhnchul, (текущая версия) :
на счёт пустых циклов тоже нестыковка, во первых там происходит приращение переменной d а во вторых врятли компилятор cout считает делом а приращение переменной пустым циклом :)
вот как раз cout (I/O) - дело для компилятора, ибо он не может вообще определить, что с его выводом делается. А приращение переменной - внезапно, компилятор вполне прослеживает, что с ней дальше будет происходить. В жабе ворнинги типа «variable valued, but was not accessed» (в том смысле, что значение переменной присвоено, но нигде далее не используется) вполне распространенное явление, и таковые переменные жаба из рантайма выкидывает. Не думаю, что gcc тупее javac.
Исходная версия arkhnchul, :
на счёт пустых циклов тоже нестыковка, во первых там происходит приращение переменной d а во вторых врятли компилятор cout считает делом а приращение переменной пустым циклом :)
вот как раз cout (I/O) - дело для компилятора, ибо он не может вообще определить, что с его выводом делается. А приращение переменной - внезапно, компилятор вполне прослеживает, что с ней дальше будет происходить. В жабе ворнинги типа «variable initialized?used, but was not accessed» (accessed - в том смысле, что значение переменной нигде далее не используется) вполне распространенное явление, и таковые переменные жаба из рантайма выкидывает. Не думаю, что gcc тупее javac.