Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1915 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  get current workind directory --> j'obtiens un repertoire bizarre

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

get current workind directory --> j'obtiens un repertoire bizarre

n°387891
lordankou
Posté le 09-05-2003 à 09:11:18  profilanswer
 

je viens d'écrire la portion de code suivant :
 

Code :
  1. char *rep_courant [14]; /* le repertoire courant ou l'on se trouve */
  2.   char *adresse ;
  3.   /* initialise le répertoire courant */
  4.   adresse = getcwd(*rep_courant,13) ;
  5.   if (adresse != NULL)
  6.     {
  7.       printf("\nImpossible de déterminer le répertoire courant !\n" );
  8.       return (-1);
  9.     }
  10.   else printf("\n%s\n", *rep_courant);


 
or quand j'exécute il me retourne comme répertoire courant :  
ü>
 
or je suis dans le rep FTP.
je pense pas que je me suis trompé dans la syntaxe (même si j'avoue que j'ai un petit doute dans le printf).  
mais est ce que cette fonction (getcwd) retourne que le répertoire courant (qui est FTP) ou le chemin absolu (dans ce cas j'aurais pas assez de place avec 14 caractères ce qui expliquerai l'erreur) ?

mood
Publicité
Posté le 09-05-2003 à 09:11:18  profilanswer
 

n°387894
Taz
bisounours-codeur
Posté le 09-05-2003 à 09:14:09  profilanswer
 

t'es sur de tout comprendre au pointeur
 
 
adresse = getcwd(*rep_courant,13) ;
printf("\n%s\n", *rep_courant);


Message édité par Taz le 09-05-2003 à 09:15:02
n°387897
lordankou
Posté le 09-05-2003 à 09:19:38  profilanswer
 

Citation :

t'es sur de tout comprendre au pointeur


 
non pas tout mais un peu mais là je pense pas avoir fait d'erreur avec les pointeurs. je serais pas contre une petite explication de mon erreur si vous avez le temps (car je vois pas l'intéret de juste corriger une erreur sans explication).

n°387902
gilou
Modérateur
Modzilla
Posté le 09-05-2003 à 09:24:50  profilanswer
 

Code :
  1. char rep_courant [14]; /* le repertoire courant ou l'on se trouve */
  2.   char *adresse ;
  3.   /* initialise le répertoire courant */
  4.   adresse = getcwd(rep_courant,13) ;
  5.   if (adresse != NULL)
  6.     {
  7.       printf("\nImpossible de déterminer le répertoire courant !\n" );
  8.       return (-1);
  9.     }
  10.   else printf("\n%s\n", rep_courant);


 
T'as l'air d'avoir des problemes avec la notion de pointeur, vu ton code:  
char *rep_courant [14];  
 
Ceci devrait aussi marcher

Code :
  1. char *rep_courant = getcwd(NULL,0);
  2.   if (rep_courant != NULL)
  3.     {
  4.       printf("\nImpossible de déterminer le répertoire courant !\n" );
  5.       return (-1);
  6.     }
  7.   else
  8.     {
  9.      printf("\n%s\n", rep_courant);
  10.      free(rep_courant);
  11.     }


 
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°387915
gilou
Modérateur
Modzilla
Posté le 09-05-2003 à 09:35:13  profilanswer
 

LordAnkou a écrit :

Citation :

t'es sur de tout comprendre au pointeur


 
non pas tout mais un peu mais là je pense pas avoir fait d'erreur avec les pointeurs. je serais pas contre une petite explication de mon erreur si vous avez le temps (car je vois pas l'intéret de juste corriger une erreur sans explication).


Tu n'avais pas declaré un pointeur sur une chaine de caracteres, ni un tableau de 14 caracteres, mais un tableau de 14 pointeurs sur des chaines de caracteres...
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°396818
lordankou
Posté le 16-05-2003 à 14:31:46  profilanswer
 

j'ai résolu mon problème mais là j'en ai une autre et je pense que ça vient du compilo.
 

Code :
  1. /* initialise le repertoire courant */
  2.   if (_gtcwd(buffer,25) == NULL)
  3.     {
  4.       printf("\nImpossible de determiner le repertoire courant !\n" );
  5.       return (-1);
  6.     }


 
et si j'ai bien lu _getcwd n'a pas besoin de librairie spécifique :

Citation :


Standard C Library (libc, -lc)


 
alors je me demande si ça viendrait pas du compilo (TCC) et voila ce que je tape en ligne de commande (je pense que c inutile de le marquer mais on sait jamer) :
TCC -r- -IG:\turboc\include -LG:\turboc\lib -eFTP ftp.c init.obj ligneRTS.obj recoit.obj envoi.obj dirfcts.obj
 
je précise que je suis sous dos (ça marche sous linux...) et que je dois faire ça à tout pris sous dos (merci les projets asm-C).  


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  get current workind directory --> j'obtiens un repertoire bizarre

 

Sujets relatifs
Detecter repertoire courantTester des fichiers dans un répertoire
[php] Faire des recherches dans Active DirectoryCreation d'un repertoire et CHMOD
upload dans un mauvais repertoireTruc bizarre avec mysql
Télécharger un répertoire à l'aide d'un composant InetControlrecupererle repertoire courant
Autre Truc bizarre ! [Newby][projet] Quel langage de programmation utiliser ? (active directory...
Plus de sujets relatifs à : get current workind directory --> j'obtiens un repertoire bizarre


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR