[C] Détails sur l'utilisation de execle
Résolu
Lum
-
Lum -
Lum -
Bonjour,
J'ai quelques problèmes avec l'utilisation de execle.
Je souhaite passer une chaîne de caractère en argument (environnement) de la fonction execle.
Jusqu'ici à priori tout est OK :
Mais comment je fais pour récupérer "Mon texte" dans prog ?
J'ai vu que je devais utiliser la fonction getenv(char *) mais je ne sais pas quoi mettre en argument !
Quelqu'un à une idée ?
J'ai quelques problèmes avec l'utilisation de execle.
Je souhaite passer une chaîne de caractère en argument (environnement) de la fonction execle.
Jusqu'ici à priori tout est OK :
char texte[] = "Mon texte";
int main(){
char *env[2] = {texte,NULL};
execle("prog","prog",(char *)NULL,env);
}
Mais comment je fais pour récupérer "Mon texte" dans prog ?
J'ai vu que je devais utiliser la fonction getenv(char *) mais je ne sais pas quoi mettre en argument !
Quelqu'un à une idée ?
A voir également:
- [C] Détails sur l'utilisation de execle
- Utilisation chromecast - Guide
- Télécharger gratuitement notice d'utilisation - Guide
- Family link temps d'utilisation ne fonctionne pas - Forum Contrôle parental
- Vous avez utilisé ce numéro de téléphone à de trop nombreuses reprises - Forum Gmail
- La ressource demandée est en cours d'utilisation - Forum Téléphones & tablettes Android
6 réponses
Salut,
Voici un petit exemple que je t'ai fait vite fait :
main.c
prog.c
Bien sûr, prog.c doit être compilé et nommé en prog
De même pour main.c qui doit être compilé, et c'est lui l'exécutable.
Si t'as des questions, n'hésite pas.
Voici un petit exemple que je t'ai fait vite fait :
main.c
#include <stdio.h>
#include <unistd.h>
extern char **environ;
int main(void) {
char texte[]="Mon texte";
setenv("mLOGIN","Lum",0);
execle("prog",NULL,environ);
puts("problème d'exécution du fichier\n",stderr);
return 0;
}
prog.c
#include <stdio.h>
#include <stdlib.h>
int main(void) {
char *p=getenv("mLOGIN");
if(p)
puts(p);
else
fputs("erreur d'environnement\n",stderr);
return 0;
}
Bien sûr, prog.c doit être compilé et nommé en prog
De même pour main.c qui doit être compilé, et c'est lui l'exécutable.
Si t'as des questions, n'hésite pas.
Fiddy mon sauver ;) tu m'as déjà éclairé dans mon précédent post : je sens que tu vas recommencer :D
Je souhaite récupérer en environnement, la variable qui contient "Mon texte".
Je souhaite récupérer en environnement, la variable qui contient "Mon texte".
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question