Probleme variable C

Signaler
Messages postés
23
Date d'inscription
samedi 19 avril 2008
Statut
Membre
Dernière intervention
1 février 2014
-
Messages postés
23
Date d'inscription
samedi 19 avril 2008
Statut
Membre
Dernière intervention
1 février 2014
-
slt

je voudré savoir comment "implenté" une variable en language C
dans une variable DOS.
malgré des recherche sur le net je né rien trouvé.
mon idée :
créer un .txt avec dedans la variable, puis
récupérer variable DOS via ce .txt

code:

FILE *ip; // créer .txt contenan variable ip
if (ip!=NULL)
ip=fopen ("ip.txt", "wt");
fprintf(ip,"%s", ip);
fclose (ip);
system("FOR /f %a IN (C:\Program Files\track3r'$\ip0.txt) DO SET ip=%a"); //récup .txt dans variable dos

or, quand kan je lance mon script [dans: C:\Program FILES\track....] ca ne marche pas!!
é pourtan g éssayé la commande FOR /f %a IN (c:\...)......dans la conssole é sa marche,
SET %ip%=123.12.1.12!!!!!
et le fichier .txt a belle é bien été créé!!!

alor si vous avé une altérnativ a ce probléme je vous en seré trés reconéssant!
merci davance.

2 réponses

Messages postés
65
Date d'inscription
dimanche 8 janvier 2006
Statut
Membre
Dernière intervention
27 février 2011
1
Salut,

Tu parles de "variable DOS", ca me fait penser aux variables d'environnement...
Tu ne pourrais pas utiliser ca plutôt que de bidouiller dans un fichier ? (après, je ne sais pas ce que tu veux vraiment stocker !)

http://www.commentcamarche.net/systemes/variables-environnement.php3

++
Messages postés
23
Date d'inscription
samedi 19 avril 2008
Statut
Membre
Dernière intervention
1 février 2014

slt spoolega

excuse de la lenteur de ma réponce.

en utilisant kom tu le dit une variable d'environement é en éxecutant par exemple:
system("ping %s", mavariable);
ce kode la ne marche pas!!! logik!
donc en gros dans un script ki executé en mode consol ya une diférence entre variable "C" é variable DOS
malgré ke d'aparence tout ce passe dans la meme console!!!

é mon probleme a moi c ke en enregistrant ma variable "c" dans un .txt é la récupéré dans dos
jéxécute:
FOR /f %a IN (c:\lendroit\du\txt.txt) DO SET ip=%a
[donc la y récupére la variable .txt dans dos]
mais le probleme c ke une foi kil a fini la commande la variable é détruite.

é apré en fesan:

system("ping %mavariable%");

il ne coné plus %mavariable% car il la détruite apré le déroulement de la premiere commande!

voila un peu plus de précision!!!
en éspérent avoir bien éxpliké mon cas.