PDA

View Full Version : [C] Problema basi !


Wpae
29-11-2009, 21:16
Ho scaricato DevC++ 4.9 per compilare i programmi in C ma quando apro il mio file .c scritto con Notepad++, e mi crea il mio file exe sul desktop (se creo un progetto mi dice perchè stai compilando un progetto vuoto?), lo apro e mi da come su fosse un file bat con tutti gli echo messi a posto ma senza il pause...
il codice è questo:

#include <stdio.h>

main()
{
printf("Hello World");
}

mentre invece funziona col codice:

#include<stdio.h>
#include<conio.h>
int main()
{
printf("Hello Word");
getch();
}

che dovrebbe stampare a schermo Hello World...
ho fatto una ricerca e non ho trovato il file stdio.h, ma non so...
Ho provato con Visual C++ ma non capisco come si compila...
la guida è quella di HTML.it:
http://programmazione.html.it/guide/leggi/32/guida-c/
Aiuto!

Ryuzaki_Eru
29-11-2009, 22:33
Il primo errore che vedo è che non hai messo il tipo ritornato dalla funzione. Devi scrivere il tipo che ritorna la funzione, ad esempio:

int main()
{
printf("Hello World!!");
}

Cosi però la finestra della shell sparisce subito, puoi mettere o un getch() o un

system("pause");

ma devi includere la stdlib.

||ElChE||88
29-11-2009, 23:39
Ma la guida? (http://programmazione.html.it/guide/lezione/1086/scriviamo-il-primo-programma-in-c/)
#include <stdio.h>

main ()
{
printf("Hello World!");
}
http://www.pctunerup.com/up//results/_200911/20091130003831_coding-horror-official-logo-small.png
#include <iostream.h>

main()
{
cout << "Hello World!";
}
http://www.pctunerup.com/up//results/_200911/20091130003831_coding-horror-official-logo-small.pnghttp://www.pctunerup.com/up//results/_200911/20091130003831_coding-horror-official-logo-small.png

cionci
30-11-2009, 00:08
Cosi però la finestra della shell sparisce subito, puoi mettere o un getch() [/CODE]

getch non è una funzione C standard.

Tutte le funzioni in conio.h non sono funzioni C standard, se si sta imparando ad usare il C è meglio non usarle.

Il consiglio di system è invece valido.

Ryuzaki_Eru
30-11-2009, 11:08
Lo so, ma nel secondo codice la usava quindi ho pensato che la conoscesse.

cionci
30-11-2009, 11:16
Lo so, ma nel secondo codice la usava quindi ho pensato che la conoscesse.
Per carità, era per specificare bene. Perché se è agli inizi è bene che non si abitui nemmeno ad usarla.

Ryuzaki_Eru
30-11-2009, 11:23
Completamente d'accordo, volevo solo chiarire perchè ho detto di usarlo ;)