Здравствуйте, Анатолий Широков, Вы писали:
АШ>Показывал сыну как можно решить его задачу с помощью компьютера. Открыл Visual Studio 2008 Express Edition, с гордым видом набрал :
АШ>Запустил и получил ... пустую консоль, хотя на самом деле ожидал увидеть...
Возможно, это эдакий маркетинговый ход Microsoft? Вот мол, если хотите, чтоб ваши программы не только компилировались, но и работали, то покупайте что-нибудь посерьезнее Express Edition
--
Не можешь достичь желаемого — пожелай достигнутого.
Здравствуйте, Анатолий Широков, Вы писали:
АШ>Показывал сыну как можно решить его задачу с помощью компьютера. Открыл Visual Studio 2008 Express Edition, с гордым видом набрал : АШ>Запустил и получил ... пустую консоль, хотя на самом деле ожидал увидеть:
Посмотрите во Event Viewer'е, может ваше приложение грохнулось не успев запуститься на какой-нить ненайденной DLL.
[In theory there is no difference between theory and practice. In
practice there is.]
[Даю очевидные ответы на риторические вопросы]
Здравствуйте, Vain, Вы писали:
V>Здравствуйте, Анатолий Широков, Вы писали:
АШ>>Показывал сыну как можно решить его задачу с помощью компьютера. Открыл Visual Studio 2008 Express Edition, с гордым видом набрал : АШ>>Запустил и получил ... пустую консоль, хотя на самом деле ожидал увидеть: V>Посмотрите во Event Viewer'е, может ваше приложение грохнулось не успев запуститься на какой-нить ненайденной DLL.
Да, что-то такое есть :
'sasha.exe': Loaded 'C:\WINDOWS\system32\shell32.dll'
First-chance exception at 0x7c91b21a in sasha.exe: 0xC0000005: Access violation writing location 0x00000010.
'sasha.exe': Unloaded 'C:\WINDOWS\system32\cssdll32.dll'
Только приложение не грохается, дебаггер благополучно доходит до return 0, вылетев на первой итерации обоих циклов.
Если расставить скобки, то все работает как и ожидалось. Их консоли же и debug и release работают как и ожидалось. Видимо, здесь что-то со студией. Тему можно закрыть.
АШ>Только приложение не грохается, дебаггер благополучно доходит до return 0, вылетев на первой итерации обоих циклов. АШ>Если расставить скобки, то все работает как и ожидалось. Их консоли же и debug и release работают как и ожидалось. Видимо, здесь что-то со студией. Тему можно закрыть.
т.е поставил не консоль? Т.е. твоя ошибка а не MS& последний пост не понятее
Здравствуйте, Сергей Мухин, Вы писали:
СМ>Здравствуйте, Анатолий Широков, Вы писали:
АШ>>Только приложение не грохается, дебаггер благополучно доходит до return 0, вылетев на первой итерации обоих циклов. АШ>>Если расставить скобки, то все работает как и ожидалось. Их консоли же и debug и release работают как и ожидалось. Видимо, здесь что-то со студией. Тему можно закрыть.
СМ>т.е поставил не консоль? Т.е. твоя ошибка а не MS& последний пост не понятее
Приведенный код не выполняется под Visual Studio 2008 Express Edition (на одной машине) и Visual Studio 2005 Professional Edition (на другой машине), если запустить его из под среды в Debug режиме — на первой итерации дебаггер переходит на return 0. Если же запустить его из консоли, то и Debug и Release работают как и ожидалось.
Здравствуйте, Анатолий Широков, Вы писали:
СМ>>т.е поставил не консоль? Т.е. твоя ошибка а не MS& последний пост не понятее
АШ>Приведенный код не выполняется под Visual Studio 2008 Express Edition (на одной машине) и Visual Studio 2005 Professional Edition (на другой машине), если запустить его из под среды в Debug режиме — на первой итерации дебаггер переходит на return 0. Если же запустить его из консоли, то и Debug и Release работают как и ожидалось.
АШ>Обратите внимание на значения i и j: АШ>
спасибо за пояснения. но легче не стало
видимо засада в дебагере.
смущает с0000005. откуда ей взяться?
Здравствуйте, Анатолий Широков, Вы писали:
АШ>на первой итерации дебаггер переходит на return 0
Это только кажется, т.к. нет закрывающих скобок, но переход в начало цикла есть и отладчик переходит на следующую строчку. Не знаю, баг или фича, но если открыть в окне дизассемблера (в студии), то прекрасно видно, что до "return 0" выполнение не доходит, пока циклы крутятся.
По поводу "пустой консоли" — проверьте тип проекта, чтобы был Console application (или PE Viewer'ом убедитесь в наличии Subsystem:Console).
Здравствуйте, byleas, Вы писали:
B>Здравствуйте, Анатолий Широков, Вы писали:
АШ>>на первой итерации дебаггер переходит на return 0 B>Это только кажется, т.к. нет закрывающих скобок, но переход в начало цикла есть и отладчик переходит на следующую строчку. Не знаю, баг или фича, но если открыть в окне дизассемблера (в студии), то прекрасно видно, что до "return 0" выполнение не доходит, пока циклы крутятся.
B>По поводу "пустой консоли" — проверьте тип проекта, чтобы был Console application (или PE Viewer'ом убедитесь в наличии Subsystem:Console).
Спасибо, вернули землю под ноги
B>По поводу "cssdll32.dll":
Анатолий Широков пишет: > > В данном случае это dll от COMODO
Ну так сноси этот шкаф с компа Похоже что антивирусы и файрволы в
конец оборзели. Недавно пришлось касперского деинсталлировать, что
прога не вылетала при отладке (правда не в MS VS)
Здравствуйте, byleas, Вы писали:
АШ>>на первой итерации дебаггер переходит на return 0 B>Это только кажется, т.к. нет закрывающих скобок, но переход в начало цикла есть и отладчик переходит на следующую строчку. Не знаю, баг или фича, но если открыть в окне дизассемблера (в студии), то прекрасно видно, что до "return 0" выполнение не доходит, пока циклы крутятся.
Это беда сишной отладочной информации.
Поскольку точки остановки отладчика расставляются не по стейтментам, а по строкам, то инструкции, отвечающие за итерирование, оказываются как-бы-нигде. А фактически — в первой строке после тела цикла. (Возможно, разные компиляторы располагают их по-разному).
А когда отлаживаешься в дизассемблере, то шагаешь не по #line, а по инструкциям процессора.