Online C Compiler
Открыть в компиляторе

Учебная версия на русском. Код и его вывод сохранены в исходном виде.

Turbo C и современные компиляторы

Адаптируйте старые примеры к стандартному C с учётом различий платформ.

Открыть в компиляторе

Turbo C и современные компиляторы
Адаптируйте старые примеры к стандартному C с учётом различий платформ.

Turbo C и Turbo C++ связаны с историческими средами DOS. Примеры могут предполагать другую модель памяти и размеры типов. Название компилятора само по себе не определяет язык каждого исходного файла.

При переносе используйте int main(void), стандартные заголовки и переносимые функции. conio.h, clrscr и getch не входят в стандартную библиотеку C. Не добавляйте остановку консоли, если среда выполнения этого не требует.

GCC и Clang позволяют выбирать стандарт и включать полезные предупреждения. Компилируйте C как C, а C++ как C++: правила этих языков различаются.

Проверьте форматы printf и scanf, границы массивов и системные зависимости. Цель переноса — сохранить определённое поведение, а не просто убрать ошибки компиляции.

Код C

#include <stdio.h>

int main(void) {
    printf("========================================\n");
    printf("Modern ISO C17/C23 Environment Diagnostic\n");
    printf("========================================\n");
    printf("Int Size     : %zu bytes (Turbo C was 2 bytes)\n", sizeof(int));
    printf("Pointer Size : %zu bytes (Turbo C was 2/4 bytes segmented)\n", sizeof(void*));
    printf("Long Size    : %zu bytes\n", sizeof(long));
    printf("Status       : Running on High-Speed Modern GCC Sandbox\n");
    return 0;
}
Открыть в компиляторе

Ожидаемый вывод

========================================
Modern ISO C17/C23 Environment Diagnostic
========================================
Int Size     : 4 bytes (Turbo C was 2 bytes)
Pointer Size : 8 bytes (Turbo C was 2/4 bytes segmented)
Long Size    : 8 bytes
Status       : Running on High-Speed Modern GCC Sandbox

Частые вопросы

Почему код и вывод остаются на английском?

Ключевые слова, идентификаторы и строки, проверяемые тестами, сохранены, чтобы не менять программу. Объяснения и элементы управления переведены.