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 :

popen et variables


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Bahan
    Inscrit en
    Avril 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Avril 2006
    Messages : 147
    Par défaut popen et variables
    Bonjour à toutes et à tous.

    J'ai un petit souci avec la fonction popen. je me demandais s'il existait un moyen pour inclure dans le premier argument de cette fonction une variable ? (en rouge dans mon code)

    OS : Unix AIX
    compilateur : xlc

    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
     
    #include <stdio.h>
    #include <string.h>
     
    main()
    {
            char *  pszExtension;
            char *  pszRadical;
            char    szBufferW[1000];
            char    szBuffer[1000];
            FILE *  pfPop;
           char *  pszNomRepertoireIn = "/MonChemin/";
    
            printf("DEBUT\n");
            pfPop   = popen ("ls -rt pszNomRepertoireIn | sort", "r") ;
            if ( pfPop == (FILE *) NULL)
            {
                    printf("Erreur sur ouverture du PIPE\n");
                    exit(0);
            }
            while(fgets(szBuffer, sizeof(szBuffer), pfPop) != (char *) NULL)
            {
                    szBuffer[strlen(szBuffer) - 1] = '\0';
                    strcpy(szBufferW, szBuffer);
                    pszRadical = strtok(szBufferW, ".");
                    pszExtension = strtok(NULL, ".");
                    printf("Buffer lu <%s> radical <%s> extension <%s>\n",
                            szBuffer,
                            pszRadical,
                            pszExtension);
            }
            printf("FIN\n");
            exit(0);
    }
    Actuellement, voici le résultat de ma fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    DEBUT
    ls: 0653-341 The file pszNomRepertoireIn does not exist.
    FIN
    Bahan

  2. #2
    Expert confirmé
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Par défaut
    Il faut que tu formattes ta commande d'abors

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    char commande[32];
    sprintf(commande, "ls -rt %s | sort", pszNomRepertoireIn);
    [...];
    pfPop   = popen (commande, "r") ;
    [...];

  3. #3
    Membre confirmé Avatar de Bahan
    Inscrit en
    Avril 2006
    Messages
    147
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Avril 2006
    Messages : 147
    Par défaut
    Merci!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 18/07/2002, 13h32
  2. variables locales ou globales ???
    Par elvivo dans le forum C
    Réponses: 13
    Dernier message: 03/07/2002, 08h22
  3. Procédure avec un nombre variable d'arguments
    Par charly dans le forum Langage
    Réponses: 15
    Dernier message: 21/06/2002, 11h08
  4. Réponses: 4
    Dernier message: 05/06/2002, 14h35
  5. les variables globales static
    Par gRRosminet dans le forum C
    Réponses: 8
    Dernier message: 27/04/2002, 08h34

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