IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

Concaténer une variable dans la fonction system


Sujet :

C

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 168
    Points : 64
    Points
    64
    Par défaut Concaténer une variable dans la fonction system
    Bonjour,

    Est-ce que quelqu'un saurait m'aider à concaténer une variable dans la fonction system() ?

    Je cherche à ajouter un bout de lien contenu dans une variable. Voici mon exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     char *lien[8] = "Windows";
     
    system("xcopy c:\\"& lien & "\\system32  c:\\MonDossier");
    Voila et ma variable lien que j'ai essayé de mettre dans ma fonction system me fait out beugger. Donc comment faire, quelle est la bonne synthaxe ?

    Merci d'avance

  2. #2
    Invité(e)
    Invité(e)
    Par défaut
    Bonjour,

    strcat permet de concaténer deux chaines.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    char lien[] = "Windows";
    char command[1024] = "xcopy c:\\";
     
    strcat(command, lien);
    strcat(command, "\\system32  c:\\MonDossier");
     
    system(command);
    PS : attention à la déclaration de la variable 'lien'.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 168
    Points : 64
    Points
    64
    Par défaut
    Bonjour,

    merci de ta réponse, est-ce que je peux faire ça plutot ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    strcat(command, lien, "\\system32  c:\\MonDossier");
    plutot que d'appeler deux fois de suite la fonction strcat ?

  4. #4
    Invité(e)
    Invité(e)
    Par défaut
    pas avec strcat, mais tu peux le faire avec sprintf :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    char lien[] = "Windows";
    char command[1024];
    sprintf(command, "xcopy c:\\%s\\system32  c:\\MonDossier", lien);

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 168
    Points : 64
    Points
    64
    Par défaut
    Bon ça marche nickel. Seulement maintenant je voudrais que au lieu de définir une valeur dans ma variable lien, que celle ci aille chercher la valeur dans un fichier.txt ! Par exemple j'aurais un fichier qui s'appelrait lien.txt dans mon dossier, et que ma variable prenne la valeur de ce fichier. Autrement dit le "Windows" je l'ecrit dans ce fichier, comme ça l'utilisateur peut changer à sa guise le lien de sauvegarde.

    C'est possible ?

  6. #6
    Invité(e)
    Invité(e)
    Par défaut
    Citation Envoyé par majudis Voir le message
    C'est possible ?
    Oui, mais dans ce cas, il faut lire le fichier. Voir les fonctions fopen, fgets et fclose.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 168
    Points : 64
    Points
    64
    Par défaut
    Bon c'est parfait tout fonctionne à merveille

    Je te remercie de ta patience mabu, et à bientôt j'espère

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 168
    Points : 64
    Points
    64
    Par défaut
    Euh une dernière question, la fonction strcat marche t-elle sous windows 2000 ? car mon programme fonctionne sous xp mais pas sous W2K

  9. #9
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Points : 50 367
    Points
    50 367
    Par défaut
    Citation Envoyé par majudis Voir le message
    Euh une dernière question, la fonction strcat marche t-elle sous windows 2000 ?
    Oui, sinon cela se saurait.

    C'est peut être le programme autour du strcat qui est buggé

  10. #10
    Invité(e)
    Invité(e)
    Par défaut
    Citation Envoyé par majudis Voir le message
    Euh une dernière question, la fonction strcat marche t-elle sous windows 2000 ? car mon programme fonctionne sous xp mais pas sous W2K
    strcat est une fonction du C standard (C90), elle ne dépend pas d'une version de windows.
    Ton problème vient peut être des bibliothèques utilisées. En effet, si tu compile avec Visual studio, par défaut celui ci va lier ton programme avec des bibliothèque qui ne seront pas présentes sur la machine cible.

    Peux tu nous décrire plus précisément le problème rencontré sous win2k?

Discussions similaires

  1. Concaténer une variable dans une fonction
    Par sellamelie dans le forum Débuter avec Java
    Réponses: 7
    Dernier message: 28/10/2013, 17h30
  2. Concaténer une variable dans le code asp
    Par sisi87 dans le forum ASP.NET
    Réponses: 6
    Dernier message: 06/09/2010, 13h13
  3. Variable dans la fonction System
    Par CyberTwister dans le forum C++
    Réponses: 2
    Dernier message: 31/12/2008, 09h02
  4. Concaténer une variable dans une String
    Par une_tite_question dans le forum Débuter avec Java
    Réponses: 2
    Dernier message: 25/05/2008, 06h31
  5. Concaténation d'une variable dans une commande
    Par dreamanoir dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 10/03/2005, 17h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo