begin process at 2012 05 30 05:05:06
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Général

 > 

Variable d'environnement


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Variable d'environnement

jeudi 27 octobre 2011 à 15:14:23 | Variable d'environnement

andoid

Bonjour j'ai un probléme sur mon code au faite je m'entraine pour comprendre les variables d'environnement : le code lit au clavier et dois créer une variables d'environnement genre tu tape CODE="SOURCE". Mais mon probléme est que mon getenv ne marche pas alors que putenv me signal qu'il a crée la variable voici mon code:

#include<stdio.h>
#include<stdlib.h>
#include<unistd.h>
#include<string.h>
#define TAILLE 100


char** decouper(char* commande)
{
char *c=NULL;
char **tab=malloc((strlen(commande)+1)*sizeof(char*));
int i=0;

c = strtok(commande, "=\"");
do {
/*J'staock les commandes dans le tableau de char** afin de pouvoir utiliser exec et sa famille*/
tab[i]=c;

i++;
c = strtok(0,"=\"");

}while (c);


return tab;

}

int main ()
{

char commande[TAILLE];
char *concat=NULL;
fgets(commande,TAILLE,stdin);
int detecte=0,i=0,res_concat;
char ** tab;
char** recup;
char* variable;

if(strchr(commande,'=')) detecte =1;

if (detecte==1)
{


tab=decouper(commande);
concat=strcat(tab[0],"=");
concat=strcat(concat,tab[1]);


printf("concat=: %s\n",concat);

if(putenv(concat)==0)
{
recup=decouper(concat);
printf("recup[0]=%s\n",recup[0]);
variable=getenv(recup[0]);
if(variable==NULL)
printf("variable n'existe pas\n");
else
printf("%s=%s\n",recup[0], variable);
}
else
{


printf("echec création de la variable d'environnement\n");
}



}
}
jeudi 3 novembre 2011 à 12:07:13 | Re : Variable d'environnement

CptPingu

Administrateur CodeS-SourceS
Bonjour.

Je te rappelle que la création de variable d'environnement est locale. Si tu crées une variable d'environnement, elle n'existera que dans l'espace que tu as crée. Donc impossible de créer une variable d'environnement exploitable de "l'extérieur" à partir d'un programme.

C'est aussi vrai pour des sous shell.

Ex:

$(export TOTO=coucou) && echo $TOTO



Ne fonctionnera pas. Alors que ceci, oui:

export TOTO=coucou && echo $TOTO



________________________________________________________________________
Historique de mes créations, et quelques articles:
http://0217021.free.fr/portfolio
Merci d'utiliser Réponse acceptée si un post répond à votre question


Cette discussion est classée dans : variable, commande, tab, char, concat


Répondre à ce message

Sujets en rapport avec ce message

Parsage tableau [ par JAYDEN ] Bonjour,Désolé de vous déranger mais dans le cadre d'un projet j'ai besoin a un moment donner de parser une suite de binaire et de les stocker dans un tableau de chaine de caractère [ par fiorellafatma ] salut à tous je cherche à inverser les caractère des mot dans un tableau de mot voici montravail qui n'a pas marché et je vous demande de l'aide [^^p Variable char [ par bthivent ] Bonjour ! j'ai du mal à faire un simple variable contenant un texte, puis l'afficherj'ai vu qu'on arrivait a un truc en faisant :char variable;variabl a propos des char [ par pinto_armindo ] Comment est stocke la variable declarer avec (char) devant :#define VARIABLE          (char)0x01Est-ce une chaine de caracteres ou le code ASCII de ce erreur sur les tubes [ par andoid ] Bonjour à tous: J'essais d'exuter une commande passé ligne de commande avec un pipe: là je suis en mode test: je veux juste exécuter ls -l |grep tu Inclure une variable int dans un char ? [ par twintornado ] Mon probleme est simple : disont que j'ai une variable entière : int variable = 488 ; // on suppose qu'elle peut changer bien sur Je veux maintenan Extraction de données dans un char[260] [ par seb2086 ] Bonjour,char variable[260] = "C:\Mes docs\Dossier\Objet.X" ;Voila en fait je voudrais récupérer dans une autre variable seulement Objet.X.En gros il f Linux Variable passé a un Thread [ par mikoo74 ] Bonjour.Voila je doit envoyé une chaine a un Thread.  je fait:********************************char * message;message = new char [1000];if (pthread_cre mots clés associés à pc : boite noire, mystique, vaudou, paranormal, magie etc... [ par Loki6 ] Salut à tous, voici un petit bout de code bizarre : bool CAppLocalizeDlg::ClassInfosTable(char ** tab, int nb){


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,296 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales