Compilatore C Online
Esegui e debuggia code C in un CLI simulato, direttamente nel tuo browser, senza setup. Perfetto per test e apprendimento veloce.
🎯 Corsi di C/C++ selezionati per te
Loading...
🧩 Informazioni su questo esecutore C online
Il CodeUtility C Executor ti permette di scrivere ed eseguire programmi C direttamente nel browser — senza installazioni o configurazioni del compilatore. È basato su una sandbox sicura che supporta gli standard reali di C, inclusi C89, C99, C11 e la versione più recente.
Questo strumento usa un vero compilatore C che gira nel cloud per compilare ed eseguire il tuo codice proprio come in un ambiente nativo. Puoi testare facilmente snippet, imparare la sintassi o esercitarti a scrivere programmi completi con input e output.
È pensato per aiutare studenti e sviluppatori a sperimentare rapidamente i fondamenti di C — come tipi di dato, puntatori, cicli, funzioni, array e strutture — senza dover installare alcun compilatore o IDE.
⚙️ Come usare questo strumento
- 1. Seleziona una versione di C (C89, C99, C11 o Più recente) dal menu a discesa nella parte superiore dell'editor.
- 2. Scrivi o incolla il tuo codice C nell'area dell'editor.
- 3. Clicca Esegui per compilare ed eseguire il programma — l’output apparirà nella console qui sotto.
- 4. Durante l’esecuzione, compare un pulsante Interrompi — cliccalo per fermare l’esecuzione in anticipo.
- 5. Usa Correggi codice per correggere automaticamente piccoli problemi di formattazione o sintassi.
- 6. Dopo la correzione, compare un pulsante Correzioni — cliccalo per rivedere le correzioni recenti.
- 7. Usa il pulsante Carica per importare codice da un file locale, oppure il pulsante Scarica per salvare il codice corrente dall’editor.
- 8. Ogni esecuzione dura fino a 20 secondi prima di terminare automaticamente.
🧠 Suggerimento: Questo ambiente esegue vero codice C in modo sicuro nel tuo browser — nessun accesso o configurazione locale richiesta.
💡 Basi di C ed esempi che puoi provare qui sopra
1. Dichiarare variabili e costanti
C richiede di dichiarare il tipo di ogni variabile. Usa #define o const per definire valori di sola lettura.
int age = 30;
double pi = 3.14159;
char grade = 'A';
char name[] = "Alice";
bool isActive = 1; // vero
// Costanti
#define MAX_USERS 100
const char* COMPANY = "CodeUtility";
2. Condizionali (if / switch)
Usa if, else if e switch per prendere decisioni.
int x = 2;
if (x == 1) {
printf("Uno\n");
} else if (x == 2) {
printf("Due\n");
} else {
printf("Altro\n");
}
switch (x) {
case 1:
printf("Uno\n");
break;
case 2:
printf("Due\n");
break;
default:
printf("Altro\n");
}
3. Cicli
Usa for, while e do-while per la ripetizione.
for (int i = 0; i < 3; i++) {
printf("%d\n", i);
}
int n = 3;
while (n > 0) {
printf("%d\n", n);
n--;
}
4. Array
Gli array memorizzano più elementi dello stesso tipo.
int numbers[3] = {10, 20, 30};
printf("%d\n", numbers[1]);
5. Struct
struct ti permette di raggruppare dati correlati.
struct Person {
char name[50];
int age;
};
struct Person p = {"Alice", 30};
printf("%s ha %d anni\n", p.name, p.age);
6. Input/Output da console
Usa printf e scanf per l'I/O da console.
char name[50];
printf("Inserisci il tuo nome: ");
scanf("%s", name);
printf("Ciao, %s\n", name);
7. Funzioni
Le funzioni incapsulano logica riutilizzabile. Dichiara tipo di ritorno, nome e parametri.
int add(int a, int b) {
return a + b;
}
printf("%d\n", add(3, 4));
8. Puntatori
Usa i puntatori per memorizzare indirizzi di memoria e manipolare i dati indirettamente.
int x = 10;
int* ptr = &x;
printf("Valore di x: %d\n", x);
printf("Indirizzo di x: %p\n", ptr);
printf("Valore dal puntatore: %d\n", *ptr);
*ptr = 20;
printf("x aggiornato: %d\n", x);
9. I/O su file
Usa fopen, fprintf, fscanf e fclose per le operazioni sui file.
FILE* file = fopen("file.txt", "w");
fprintf(file, "Ciao file");
fclose(file);
char line[100];
file = fopen("file.txt", "r");
fgets(line, sizeof(line), file);
printf("%s", line);
fclose(file);
10. Gestione delle stringhe
Usa funzioni da <string.h> come strlen, strcpy e strcmp.
#include <string.h>
char text[] = "Hello";
char copy[10];
strcpy(copy, text);
printf("Lunghezza: %lu\n", strlen(copy));
printf("Confronto: %d\n", strcmp(copy, "Hello"));
11. Memoria dinamica
Usa malloc e free per l'allocazione nello heap.
int* nums = (int*) malloc(3 * sizeof(int));
nums[0] = 1; nums[1] = 2; nums[2] = 3;
for (int i = 0; i < 3; i++) {
printf("%d ", nums[i]);
}
free(nums);