|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Nov 2000
Città: Milano
Messaggi: 210
|
restituire codice diverso da 0
Ciao a tutti!
Il programmino che sto facendo deve leggere all'avvio un file di nome prova.txt nella home directory dell'utente che esegue il comando, però può anche succedere che il comando non venga lanciato dalla home directory). Quindi mi si chiede che se il file .txt non esiste, il comando deve termnare restituendo un codice di ritorno diverso da 0; ecco cosa ho scritto: Codice:
/*trovo l'ambiente dovè prova.txt**/
char *ambiente;
ambiente=getenv("HOME");
if(ambiente==NULL) return -1;
char path[80];
sprintf(path,"%s/prova.txt",ambiente);
/* Apro il fileprova.txt*/
IFERROR(fd=open(path, O_RDONLY), "aprendo prova.txt");
HOME, mi si blocca senza che mi dica nulla. Come faccio a farmi dare un messaggio d'errore? Grazie! ciao! |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Nov 2000
Città: Milano
Messaggi: 210
|
UP
AIUTO PLEASE |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jun 2002
Città:
Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8896
|
Codice:
if ((fp=fopen (...))==NULL){
printf ("\nErrore non ce sta il file");
return (-1);
}
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio. Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso |
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: Nov 2000
Città: Milano
Messaggi: 210
|
Quote:
IFERROR..... ma mi da segmentation fault a cosa è dovuto? |
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jun 2002
Città:
Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8896
|
Codice:
if ((fp=fopen ("file.txt", "r"))==NULL){
printf ("\nErrore non ce sta il file");
return (-1);
}
~§~ Sempre E Solo Lei ~§~
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio. Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Nov 2000
Città: Milano
Messaggi: 210
|
Ho scritto così:
Codice:
/*trovo l'ambiente dovè prova.txt**/
char *ambiente;
ambiente=getenv("HOME");
if(ambiente==NULL) return -1;
char path[80];
sprintf(path,"%s/prova.txt",ambiente);
if ((fd=fopen ("file.txt", "r"))==NULL){
printf ("\nErrore non ce sta il file");
return (-1);
}
non è che è un problema di dimensione path[80]? grazie.... |
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Jun 2002
Città:
Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8896
|
per i percorsi dai le costanti si sistama:
#include <stdlib.h> These constants define the maximum length for the path and for the individual fields within the path. Constant Meaning _MAX_DIR Maximum length of directory component _MAX_DRIVE Maximum length of drive component _MAX_EXT Maximum length of extension component _MAX_FNAME Maximum length of filename component _MAX_PATH Maximum length of full path ~§~ Sempre E Solo Lei ~§~
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio. Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Nov 2000
Città: Milano
Messaggi: 210
|
stdlib.h l'ho incluso!!!
dov'è l'errore?? |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 04:27.



















