acceder aux variables d'environnement en C ?

acceder aux variables d'environnement en C ? - Programmation

Marsh Posté le 08-06-2002 à 17:58:49    

Je travaille sous linux... comment faire ?
Merci !

Reply

Marsh Posté le 08-06-2002 à 17:58:49   

Reply

Marsh Posté le 08-06-2002 à 18:09:09    

man getenv


---------------
« No question is too silly to ask, but, of course, some are too silly to answer. » -- Perl book
Reply

Marsh Posté le 08-06-2002 à 18:15:19    

euh... si man getenv ne me donne aucun resultat, c'est que j'ai oublie d'installer quel package ? :)
 
re-merci !

Reply

Marsh Posté le 08-06-2002 à 18:21:23    

int main( char argc, char ** argv, char ** env)  
{
  while ( *(env++) != NULL)
    printf("%s\n",*env);
  return 0;
}

Reply

Marsh Posté le 08-06-2002 à 19:14:32    

ugte a écrit a écrit :

euh... si man getenv ne me donne aucun resultat, c'est que j'ai oublie d'installer quel package ? :)


C'est manpages-fr (ou manpages-dev pour la version anglaise).


---------------
« No question is too silly to ask, but, of course, some are too silly to answer. » -- Perl book
Reply

Marsh Posté le 09-06-2002 à 06:29:40    

exemple tout con:
 
main()
{
float chaine[10];
 
chaine = getenv("home" );
}
 
si je me rappelle bien du truc...

Reply

Marsh Posté le 09-06-2002 à 06:32:59    

sinon , a la bourrin  

Code :
  1. int main( int rgc , char ** argv,char **envp){
  2.      int i=0;
  3.      while(envp[i]!=NULL){
  4.           printf("envp[%i] = %s\n",i,envp[i]);
  5.      }
  6. }


 
ce code va t'afficheer toutes les variables globales auquelle tu as accès ( mais le getenv est plus propre si tu peux t'en servir)


Message édité par flo850 le 06-09-2002 à 06:33:49

---------------

Reply

Marsh Posté le 09-06-2002 à 11:52:02    

apolon34 a écrit a écrit :

exemple tout con:
 
main()
{
float chaine[10];
 
chaine = getenv("home" );
}


Ah non pas du tout, efface. Monsieur est amateur des débordements de tampon ?
 
int main(int argc, char **argv)
{
char *toto;
 
toto = getenv("HOME" );
}
 
Ou si on veut s'amuser à modifier la chaîne après coup sans foutre le bordel :
toto = strdup(getenv("HOME" ));


---------------
« No question is too silly to ask, but, of course, some are too silly to answer. » -- Perl book
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed