View Full Version : Aiuto c++
nothinghr
03-12-2003, 11:08
Non so programmare ho scritto questo semplice programma:
main()
{
printf("welcome ");
printf("to c++!\n");
}
mi da' questo errore :
C:\MSDEV\BIN\Text1.cpp(5) : warning C4508: 'main' : function should return a value; 'void' return type assumed
Error executing cl.exe.
Text1.exe - 3 error(s), 1 warning(s)
che e'?
ilsensine
03-12-2003, 11:13
Non sai programmare, ma forse sai leggere :p
main deve restituire un valore "int"; normalmente il suo prototipo è
int main()
{
...
return 0;
}
ilsensine
03-12-2003, 11:50
Cmq potrebbe solo essere una parte del problema (in realtà è mostrato dal compilatore come warning, ma allora l'errore dov'è?)
Ci vuole l'include !!!
#include <stdio.h> da mettere come prima riga...
Comunque hai riportato solo una parte degli errori...
nothinghr
03-12-2003, 12:15
Originariamente inviato da cionci
Ci vuole l'include !!!
#include <stdio.h> da mettere come prima riga...
Comunque hai riportato solo una parte degli errori...
e' vero l'h oscoperto dopo.. ma come si fa a far girare il programma senza che si chiuda automaticamente? uso il prompt?
ilsensine
03-12-2003, 12:15
Sì o lo lanci dal prompt o ci metti una pausa alla fine...
nothinghr
03-12-2003, 12:51
Originariamente inviato da ilsensine
Sì o lo lanci dal prompt o ci metti una pausa alla fine...
che vuol dire ci metto una pausa alla fine?
Con fare pausa penso abbia inteso aggiungere 1 istruzione ke fa fare pausa all'applicazione facendole aspettare 1 input dall'utente.
Ad esempio in windows aggiungi
system("pause");
prima del return 0;
In Linux nn mi ricordo ma puo' andare bene getchar();
La stessa cosa la ottieni scrivendo 1 file .bat cosi'
mioProgramma.exe
pause
nothinghr
03-12-2003, 19:08
Originariamente inviato da Molz
Con fare pausa penso abbia inteso aggiungere 1 istruzione ke fa fare pausa all'applicazione facendole aspettare 1 input dall'utente.
Ad esempio in windows aggiungi
system("pause");
prima del return 0;
In Linux nn mi ricordo ma puo' andare bene getchar();
La stessa cosa la ottieni scrivendo 1 file .bat cosi'
mioProgramma.exe
pause
Ok grazie a tutti
nothinghr
04-12-2003, 19:35
scusate ma non so trovare l'errore!! Devo cercare un certo valore all'interno di un vettore in questo caso il valore 8.
#include<stdio.h>
#include<stdlib.h>
int v[]={2,3,1,5,4,8,9,6,7,0};
int valore,i,dim,posizione;
main()
{
dim=10;
valore=8;
posizione=-1;
for(i=0,i<10,i++)
if(v[i]==valore) posizione=i;
if(posizione==-1) printf("non ho trovato il valore");
else printf("ho trovato il valore %d nella posizione %d",posizione,valore);
return 0;
}
mi da' quest'errore : error C2143: syntax error : missing ';' before ')'
ma dove manca?!?!?!?
Serve il ; al posto della , all'interno del for...
nothinghr
04-12-2003, 19:44
Originariamente inviato da cionci
Serve il ; al posto della , all'interno del for...
Azz sono proprio un cane :cry:
nothinghr
04-12-2003, 19:56
#include<stdio.h>
char mese[];
int g;
main()
{
printf("In che mese siamo?\n");
scanf("%s",mese);
printf("Che giorno e?\n");
scanf("%d,&g);
printf("oggi e' il giorno %d del mese %s\n",g,mese);
return 0;
}
error C2001: newline in constant
error C2146: syntax error : missing ')' before identifier 'printf'
Per oggi e' l'ultimo giuro!:D
#include<stdio.h>
char mese[];
int g;
main()
{
puts("In che mese siamo?\n");
scanf("%s",&mese);
puts("Che giorno e?\n");
scanf("%d",&g);
printf("oggi e' il giorno %d del mese %s\n",g,mese);
return 0;
}
nothinghr
04-12-2003, 20:12
Originariamente inviato da Luc@s
#include<stdio.h>
char mese[];
int g;
main()
{
puts("In che mese siamo?\n");
scanf("%s",&mese);
puts("Che giorno e?\n");
scanf("%d",&g);
printf("oggi e' il giorno %d del mese %s\n",g,mese);
return 0;
}
Perche' puts cos'e'? e poi nelle stringhe non bisogna omettere &? tipo
scanf(""%s",mese)?
comunque grazie provo cosi'
Originariamente inviato da nothinghr
Perche' puts cos'e'? e poi nelle stringhe non bisogna omettere &? tipo
scanf(""%s",mese)?
comunque grazie provo cosi'
puts() è come printf ma nn accetta i %, ma gli escape(\) si.
& vuol dire "indirizzo di".
Cosi serve
char mese[];
scanf("%s",&mese);
Cosi no
har * mese;
scanf("%s",mese);
Poiche (char *) è un puntatore, cioe variabile che contiene indirizzo di altra variabile.
Ciao
char mese[];
scanf("%s",&mese);
Non ci vuole la & e bisogna specificare la dimensione del vettore...
Anche così non va bene:
char * mese;
scanf("%s",mese);
Così va bene:
char mese[10];
scanf("%s",mese);
nothinghr
04-12-2003, 22:00
Ho scritto cosi' ma continua a darmi i soliti 2 errori di prima:
#include<stdio.h>
char mese[10];
int g;
main()
{
puts("In che mese siamo?\n");
scanf("%s",mese);
puts("Che giorno e?\n");
scanf("%d",&g);
printf("oggi e' il giorno %d del mese %s\n",g,mese);
return 0;
}
Forse se fai:
return(0);
...al posto di:
return 0;
Potrebbe funzionare meglio...
guarda che quel codice è corretto...
nothinghr
06-12-2003, 11:45
Originariamente inviato da ri
guarda che quel codice è corretto...
infatti se premo compile mi dice 0 errori ma se premo build mi da' i 2 errori e non mi fa proseguire.. boh!
nothinghr
06-12-2003, 11:46
Come non detto scusate
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.