Учебная версия на русском. Код и его вывод сохранены в исходном виде.
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
Частые вопросы
Почему код и вывод остаются на английском?
Ключевые слова, идентификаторы и строки, проверяемые тестами, сохранены, чтобы не менять программу. Объяснения и элементы управления переведены.