begin process at 2010 02 10 13:02:24
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Divers

 > 

Un shell qui lance un prog C


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

Un shell qui lance un prog C

mercredi 5 mars 2008 à 12:30:08 | Un shell qui lance un prog C

soulkeum

Bonjour,

je dois modifier un programme qui existe , pour qu'il recoit un paramateres en entrée.
ce parametre est donnée par un shell unix,  par exemple  DT10 ou DT11 ou HKFH , toujours une chaine de 4 caractere

or je en sais pas comment je dois modifier mon main pour qu'il lise ce caractere
pour moi les  int argc , et  char  **argv  je ne me suis jamais servit : int main (int argc, char **argv)

merci, d'avance
j'espere que j'était claire
mercredi 5 mars 2008 à 12:41:53 | Re : Un shell qui lance un prog C

Pistol_Pete

Salut

"argc" donne le nombre d'argument et "argv" leurs noms.
Tu peux tester ce petit exemple qui montre l'utilisation des arguments du main:

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char **argv)
{
        while(argc--)
                printf("%s\n", *argv++);
        exit(1);
}

A noter que le premier parametre dans argv est le nom de l'exe.

A+
Mon site internet : [ Lien ]

mercredi 5 mars 2008 à 15:07:17 | Re : Un shell qui lance un prog C

SAKingdom

Membre Club
Hmm ok c'est un exemple.
Cependant, je ne conseille pas du tout de modifier directement ni argc ni argv. Après la boucle, si on veut réutiliser argc et argv, à moins de stocker leur valeur dans une variable, on ne saura pas combien d'arguments contient argv. De plus, argv sera décalé de on ne sais combien.

C++ (@++)

mercredi 5 mars 2008 à 17:18:42 | Re : Un shell qui lance un prog C

jfrancois

Réponse acceptée !
Une solution possible :

Il faut que la fonction principale soit du type main(int argc,char** argv) pour manipuler les paramètres passés.

int main
(
    int    argc // Nombre de paramètres sur la ligne de commande
                // y compris le nom du programme lui-même
  
,char** argv // Tableau des paramètres : argv[0] = nom du programme
                // argv[1] = 1er paramètre, argv[2] = deuxième paramètres, ...
)
{
   if (argc == 1)
   {
      printf("Le programme %s a été lancé sans paramètre à traiter\n",argv[0]);
      return 0;
   }
   if (argc > 2)
   {
      printf("Le programme %s a été lancé avec trop de paramètres !\n",argv[0]);
      return 0;
   }
   printf("Le programme %s doit traiter le paramètre %s\n",argv[0],argv[1]);
   ...
   Traitement du paramètre dans argv[1]
   ...
}

Si le programme s'appelle prg : la saisie de "prg DT10" affichera "Le programme prg doit traiter le paramètre DT10".

Jean-François

vendredi 7 mars 2008 à 23:22:09 | Re : Un shell qui lance un prog C

soulkeum

merci de vos réponse


Cette discussion est classée dans : int, prog, shell, modifier, lance


Répondre à ce message

Sujets en rapport avec ce message

prob ecriture dans un fichier [ par aardman ] salut,j'utilise dans un prog la fonction fopen pour creer et ecrire dans un fichier texte.Quand je lance mon prog en double cliquant, ca marche bien.M fork+exec ? [ par garslouche ] Bonjour, je bosse sous Linux (g++) avec Qt (mais du C ou du C++ standard peut très bien faire l'affaire) et voudrais que mon programme lance un autre Modifier un caractere dans une chaine [ par floche ] Bonjours à tous Le titre est assez explicite... Je voudrais pouvoir changer un caractere d une chaine si c'est un a mais ca ne marche pas. Merci pour List STL [ par gribgrib ] Salut,J'espere que quelqu'un pourra m'aiderVoila mon problème : j'insère des structures dans uns list mais une fois toutes mes structures insérées dan Double déréférencement [ par KurpeusLondon ] Bonjour,Je cherche a modifier une valeur  accessible seulement par deux pointeurs successifs.int A = 10;int * pA = &a;int * pB = NULL;pB = &pA;J'essay problèmes ds mon prog [ par wildTiger ] salut tt le mondeje veux dessiner des points en cliquant par la souris sur ma fenêtre. mais mon prog ne marche pas. est ce que qlq'1 peut m'aider?voic prog en opengl [ par wildTiger ] salut tt le mondeje veux dessiner des points en cliquant par la souris sur ma fenêtre. mais mon prog ne marche pas. est ce que qlq'1 peut m'aider?voic ProB avec la fonction int remove (const char*) [ par Avalon10101 ] _-=AvAloN=-_Jai un petit prob avec cette fonction :Je cré mon prog il na aucune erreur é il est donc pré à etre exécuter pour suprimer un fichier test comment savoir si un prog a un Shell_NotifyIcon??? [ par youpiyoyo ] Comme le titre le demande, j'aimerai savoir comment savoir si un prog selectionner (un peu comme spy++), a une icone dans la zone de notifycation????j besoin d'aide pour mon petit prog [ par fairmond88 ] bjr j'ai besoin d'une aide pour ce prog; le but est de faire la somme des elements du tableau t à 2 dimenssions en utilisant le formalisme pointeur; q


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
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 : 1,279 sec (4)

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