Enregistrement fichier en C, bug bizarre

hl037 -  
Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour, j'ai un problème avec les enregistrements de fichiers en C

voici mon code:


#include <stdio.h> 
#include <stdlib.h> 

int main(int argc, char* argv[]) 
{        
    
   FILE * f=fopen("test.cfg","w"); 
   fprintf(f,"test"); 
   fclose(f); 
   system("PAUSE"); 
   return 0; 
} 



quand j'exécute sans lui passer d'arguments, simplement en faisant un double-clic, tout se passe normalement, le fichier "test.cfg" est créé, tout va pour e mieux... MAIS, quand je asse par la console Windows, le programme s'exécute nickel, mais le fichier "test.cfg" n'est PAS créé... de même lors que je passe quelque chose en argument via la console, ou quand je fais glisser un fichier dessus (pour "ouvrir le fichier avec" mon programme. autre chose étrange, c'est que je peux passer des paramètres au programme par mon IDE (dev-c++)et le "test.cfg" est là aussi enregistré...

Bref, est-ce un problème relatif à xp, est-ce que je suis le seul chez qui ça fait ça, sinon, comment régler le problème...

Merci d'avance



A voir également:

2 réponses

Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
fait du débgugage, et attention au répertoire de sortie.
#include <stdio.h> 
#include <stdlib.h> 

int main(int argc, char* argv[]) 
{        
    
   FILE * f=fopen("test.cfg","w"); 
   if(f==0){perror("erreur ouverture fichier\n");exit(1);}
   fprintf(f,"test"); 
   fclose(f); 
   system("PAUSE"); 
   return 0; 
} 
0
hl037
 
j'ai déjà fait ça: aucune erreur... on dirait plutôt que ça vient de l'OS
0
Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
bof, je ne pense pas, XP est pas si nul que ça.
je pense plutôt que tu ne doit pas être dans le bon répertoire, essai des commandes dans sytème type "pwd" pour savoir où tu es, ou "dir" pour lister le répertoire et vérifier que tu as bien écris sur le disque.
0