View Full Version : Compilare C in Linux
Hardcore
7th March 2007, 15:53
Lo so che può sembrare na cosa paradossale per linux, ma io nn riesco a compilare un banale file .c con ubuntu.
il programma è il seguente
#include <stdio.h>
void main (){
printf ("Hello World");
}
nelle varie guide ho letto che si dovrebbe fare
gcc hello.c
ma l'errore che mi viene dato è che nn trova o nn intende la stdio.h, c'è un modo? una guida? un altro comando? un programma grafico?
parlo di linguaggio C non C++, ne C #
Dictator
7th March 2007, 16:02
Lo so che può sembrare na cosa paradossale per linux, ma io nn riesco a compilare un banale file .c con ubuntu.
il programma è il seguente
#include <stdio.h>
void main (){
printf ("Hello World");
}
nelle varie guide ho letto che si dovrebbe fare
gcc hello.c
ma l'errore che mi viene dato è che nn trova o nn intende la stdio.h, c'è un modo? una guida? un altro comando? un programma grafico?
parlo di linguaggio C non C++, ne C #
int main(void) { ... }
hai provato?
Luceen
7th March 2007, 16:03
magari mancano le librerie nel sistema...
Hardcore
7th March 2007, 16:05
magari mancano le librerie nel sistema...
si il problema dovrebbe essere quello , e come si risolve ?
ma ti manca:
printf("Hello World!\n");
return 0;
nel codice, o sono io che ricordo male il c?-.-
Ercos
7th March 2007, 16:30
magari mancano le librerie nel sistema...
*
Luceen
7th March 2007, 17:08
ma ti manca:
printf("Hello World!\n");
return 0;
nel codice, o sono io che ricordo male il c?-.-
essendo void non dovrebbe esser necessario il return... e \n al limite non ricordo bene potrebbe far bloccare l'esecuzione ma non la compilazione
San Vegeta
7th March 2007, 18:29
madò non mi fate leggere ste cose dai...
1 - devi installare le librerie di sistema se non le hai, o fargli trovare il path al compilatore
2 - una funzione che restituisce void, di fatto non restituisce nulla
3 - una funzione che non accetta parametri non deve per forza aver scritto voi tra parentesi
4 - la funzione main andrebbe dichiarata come int e restituire un intero, solo per rispettare alcuni dettami di standard, standard che di fatto non esistono...
Hardcore
7th March 2007, 19:10
thx son riuscit a capire, in pratica ubuntu monta libc6 , ma gli manca sia gcc che libc6-dev
installate queste funzia tutto.
grazie di nuovo :kiss:
Arcotemo
12th March 2007, 21:28
essendo void non dovrebbe esser necessario il return... e \n al limite non ricordo bene potrebbe far bloccare l'esecuzione ma non la compilazione
ommmmmggg /n manda a capo il cursore ç_ç
è il break che blocca l'esecuzione del ciclo
Luceen
12th March 2007, 21:32
ommmmmggg /n manda a capo il cursore ç_ç
è il break che blocca l'esecuzione del ciclo
-.-
io intendevo che se il printf fosse bloccante aspetterebbe il carattere di "a capo" prima di passare avanti... ma non ricordo bene se il printf lo fosse o meno e se potesse essere settato bloccante a prescindere...
NoeX
12th March 2007, 21:33
ommmmmggg /n manda a capo il cursore ç_ç
è il break che blocca l'esecuzione del ciclo
il break rompe il ciclo, fa uscire l'esecuzione allo scope soprastante
San Vegeta
16th March 2007, 10:32
m'era sfuggita questa... /n non esiste come codice di escape, il carriage return è \n ;)
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions Inc. All rights reserved.