Online C Compiler
Apri nel compilatore

Edizione didattica italiana

Turbo C e compilatori moderni

Adatta gli esempi storici al C standard considerando le differenze di piattaforma.

Apri nel compilatore

Turbo C e compilatori moderni
Adatta gli esempi storici al C standard considerando le differenze di piattaforma.

Turbo C e Turbo C++ appartengono ad ambienti storici legati a DOS. Gli esempi possono presumere altri modelli di memoria e dimensioni dei tipi. Il nome del compilatore non determina da solo il linguaggio di un file.

Per adattare un esempio usa int main(void), header standard e funzioni portabili. conio.h, clrscr e getch non fanno parte della libreria standard C. Non aggiungere pause se l’ambiente non le richiede.

GCC e Clang consentono di scegliere lo standard e attivare avvisi utili. Compila C in modalità C e C++ in modalità C++: le regole sono diverse.

Ricontrolla printf, scanf, limiti degli array e dipendenze di sistema. L’obiettivo è preservare un comportamento definito, non soltanto eliminare gli errori di compilazione.

Codice sorgente

#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;
}
Apri nel compilatore

Risultato atteso

========================================
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

Domande frequenti

Perché il codice e alcuni risultati restano in inglese?

Parole chiave C, identificatori, commenti del programma e output attesi restano quelli originali per preservare codice eseguibile e test coerenti. Spiegazioni e istruzioni sono tradotte.