Ошибка выполнения файла .exe моей программы

0

Я сделал программу для пинг-понга в C, используя компилятор Turbo C++. Но проблема в том, что после компиляции программы возникает ошибка при запуске exe файла, как показано ниже:

Изображение 174551

Поэтому я понял, что эта ошибка, возможно, потому, что я использую 64-битную ОС, а затем я попытался запустить ее на 32-битной ОС, и ошибка была такой:

Изображение 174551

Что я могу сделать, чтобы моя программа была совместима, и что я могу напрямую запускать exe файл, а не всегда выполнять программу.

  • 9
    Используйте компилятор, которому не больше 20 лет. Или попробуйте запустить программу в dosbox.
  • 1
    Используйте Visual Studio, если вы хотите создавать приложения / игры для Windows. Изучение того времени, когда вы пишете небольшие программы, будет очень полезно, когда вы переходите к более крупным проектам.
Показать ещё 6 комментариев
Теги:

1 ответ

3

Turbo C - это 16-разрядный компилятор для DOS, и он создает 16-разрядные исполняемые программы. 64-разрядные версии Windows не поддерживают запуск 16-разрядных DOS-программ, так как процессоры x64 не поддерживают режим виртуальной 8086 при работе в длинном режиме. Чтобы запустить DOS-программу в 64-разрядной Windows, вам нужно использовать что-то вроде DOSBox, который эмулирует процессор, поэтому ему не нужен настоящий процессор для поддержки виртуального 8086-режима.

32-разрядная Windows поддерживает 16-разрядные программы DOS. Непонятно, почему WinRAR участвовала в попытке запустить вашу программу на 32-битной Windows. Попробуйте запустить свою программу из командной строки, чтобы избежать каких-либо расширений оболочки, которые могут вызывать WinRAR для вещей, которые она (ошибочно) считает самораспаковывающимися архивами.

Лучше всего использовать современный компилятор. Turbo C в основном устарел, поскольку DOS в основном устарел. Существует ряд бесплатных инструментов разработки C/C++, доступных для современных 32-разрядных и 64-разрядных компьютеров, таких как Microsoft Visual Studio Express и Code :: Blocks.

Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню