View Full Version : [c] help devo consegnare un progetto tra qualche ora e non capisco l' errore
dottorkame
21-02-2007, 10:20
Ciao a tutti sto facendo un programma che lavora su pile, quando lo compilo però
mi da questo errore:
"Permission denied id returned 1 exit status" ma non mi da nessuna linea che errore e'?
grazie ciao
Michael Jennings
21-02-2007, 10:25
Solitamente exit con codice 1 è un'uscita che avviene per errore...inoltre ti dice che il permesso è negato...non è che forse la tua postazione non ha autorizzazione per compilare programmi?? Anke se a dire il vero la cosa mi sembra molto strana.
dottorkame
21-02-2007, 10:27
anche a me sembra una cosa strana e' il mio pc di casa! ora provo su un altro pc e cmq prima non mi dava questo errore, ha cominciato quando ho inserito questo codice
for( ; ; ) {
printf("entro nel for %d\n", rand());
scanf("%d",&i);
switch(i) {
case 1 : inserisciRosso(a,5);
break;
case 2 : inserisciBlu(a,6);
break;
case 3 : inserisci_random(a,2);
break;
case 4 : estraiRosso();
break;
case 5 : estraiBlu();
break;
case 6 : estrai_random();
break;
default : printf("Inserire 1 2 3 4 5 o 6\n");
break;
}
}
Michael Jennings
21-02-2007, 10:29
Qual è il tuo compilatore?? Ti ha mai dato problemi??
dottorkame
21-02-2007, 10:36
uso dev-C++, ho provato sul portatile e compila semza problemi, ma che cavolo e' successo?
dottorkame
21-02-2007, 10:43
ora non compila + neanche sul portatile questo e' il liog:
Compilatore: Default compiler
Esecuzione di gcc.exe...
gcc.exe "C:\Documents and Settings\Christian\Desktop\DoppioStack_fine.c" -o "C:\Documents and Settings\Christian\Desktop\DoppioStack_fine.exe" -I"C:\Dev-Cpp\include" -L"C:\Dev-Cpp\lib"
C:\Dev-Cpp\Bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\mingw32\bin\ld.exe: cannot open output file C:\Documents and Settings\Christian\Desktop\DoppioStack_fine.exe: Permission denied
collect2: ld returned 1 exit status
Esecuzione terminata
yorkeiser
21-02-2007, 11:02
Permission denied mi dà molto l'impressione che il tuo file sia ancora in esecuzione quando cerchi di compilarlo (controlla nel taskmanager) o che sia protetto da scrittura
dottorkame
21-02-2007, 11:03
ok sono un idiota, lasciavo la finestra dos aperta col programma che girava...:muro: :muro: :muro: :muro: :muro: :fagiano:
Michael Jennings
21-02-2007, 11:06
Di solito Dev non dà problemi...il codice che hai scritto mi sembra corretto...tuttavia non ho capito come uscirai da quel ciclo. Potrebbe però essere qualche funzione che rikiami nello switch ke non và anke se hai scrito in precedenza che il portatile l'aveva compilato. Riprova di nuovo...mi è successo + volte ke un programma nn compilato al primo colpo si sia compilato in seconda battuta.
dottorkame
21-02-2007, 11:17
Di solito Dev non dà problemi...il codice che hai scritto mi sembra corretto...tuttavia non ho capito come uscirai da quel ciclo. Potrebbe però essere qualche funzione che rikiami nello switch ke non và anke se hai scrito in precedenza che il portatile l'aveva compilato. Riprova di nuovo...mi è successo + volte ke un programma nn compilato al primo colpo si sia compilato in seconda battuta.
si perche' pensavo di uscire con uno squallido ctrl-c ora l' ho modificato con un goto
for( ; ; ) {
scanf("%d",&i);
switch(i) {
case 1 : inserisciRosso(a,rand());
break;
case 2 : inserisciBlu(a,rand());
break;
case 3 : inserisci_random(a,rand());
break;
case 4 : estraiRosso();
break;
case 5 : estraiBlu();
break;
case 6 : estrai_random();
break;
case 0 : goto fine_prog;
break;
default : printf("Inserire 1 2 3 4 5 6 o 0\n");
break;
}
}
fine_prog:
return 0;
trallallero
21-02-2007, 12:32
si perche' pensavo di uscire con uno squallido ctrl-c ora l' ho modificato con un goto
for( ; ; ) {
scanf("%d",&i);
switch(i) {
case 1 : inserisciRosso(a,rand());
break;
case 2 : inserisciBlu(a,rand());
break;
case 3 : inserisci_random(a,rand());
break;
case 4 : estraiRosso();
break;
case 5 : estraiBlu();
break;
case 6 : estrai_random();
break;
case 0 : goto fine_prog;
break;
default : printf("Inserire 1 2 3 4 5 6 o 0\n");
break;
}
}
fine_prog:
return 0;
NO! il goto no :help:
l' ho modificato con un gotonaaaaaaa
int end = 0;
while (!end)
{
....
case 0:
end = 1;
break;
....
}
dottorkame
21-02-2007, 12:43
perche' non vi piace il goto?
trallallero
21-02-2007, 13:02
perche' non vi piace il goto?
usato come l'hai usato tu potrebbe anche andare perché non é pericolso ma é brutto da vedere.
É comunque sempre un salto incondizionato, non rappresentabile in un diagramma.
Nel libro di C che usavo per studiare c'era il capitolo del goto e il titolo recitava:
Il goto: la vergogna! :D
tomminno
21-02-2007, 14:00
Mai usato il goto in vita mia, ma pensandoci su anche break e continue non ci vanno tanto lontani, sempre salti incondizionati sono.
trallallero
21-02-2007, 14:19
Mai usato il goto in vita mia, ma pensandoci su anche break e continue non ci vanno tanto lontani, sempre salti incondizionati sono.
Vero. Infatti ogni tanto penso che il rifuto del goto, se si usano break e continue, sia solo ideologico ;)
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.