dartal
Messages postés14Date d'inscriptionjeudi 25 septembre 2003StatutMembreDernière intervention12 février 2005
-
14 nov. 2004 à 23:10
Bpsyke
Messages postés2Date d'inscriptionjeudi 8 avril 2004StatutMembreDernière intervention20 février 2006
-
18 déc. 2004 à 18:22
Salut ,
J'ai un ptit problème .. je suis en train de faire un ptit shell sous linux ... et j'aimerais que l'utilisateur rentre sa commande directement suivi de l'ensemble des paramètres du style " ls -a -l" ou bien " rm -r -i" etc .... pour cela j'utilise un execvp .
Je suis donc obligé de couper ma chaine de caractère (enregistré par un gets() ) à chaque espace et de mettre tous les élèments dans un tableau ....
Malheuresement je galère un ptit peu ... kelk'un pourrait me donner un coup de main ?
magic_Nono
Messages postés1878Date d'inscriptionjeudi 16 octobre 2003StatutMembreDernière intervention16 mars 2011 15 nov. 2004 à 15:34
Nebula> bien sur, le fait de ne pas se limiter a un environnement et de pouvoir retrouver les mêmes fonctions quelque soit la machine utilisée et son système
regarde donc globals.hpp
en fait, seules les Dxx pour les boites de dialogues
et des fonctions de BVisuel sont spécifiques à Win32/MFC,
il est prévu de faire sauter cette limitation par la suite
Bpsyke
Messages postés2Date d'inscriptionjeudi 8 avril 2004StatutMembreDernière intervention20 février 2006 18 déc. 2004 à 18:22
je sui moi meme em train de faire un shell et G resolu assew facilemen ce pb
int compte_mot(char *str)
{
int i;
int nb_word;
i = 0;
nb_word = 0;
while (str[i] != '\0')
{
if ((str[i]) != ' ')
{
nb_word++;
while (str[i] != ' ' && str[i] != '\0')
i++;
i--;
}
i++;
}
return (nb_word);
}
char **my_str_to_wordtab(char *str)
{
int i;
int nb_word;
char **word;
nb_word = compte_mot(str);
word = malloc((nb_word + 1) * sizeof (**word));
if (word == 0)
exit(1);
while (*str == ' ')
str++;
for (i = 0; i < nb_word; i++)
{
word[i] = str;
while(*str != ' ' && *str != '\0')
str++;
*str++ = '\0';
while (*str == ' ')
str++;
}
word[i] = '\0';
return (word);
}
pour info cette fonction pren ta chainde de caractere (qui doi avec ete malloquE precedemen puisque lon ecrit dedan) et te renvoit un tablo a double entre que tu as juste a envoyee a execvp
voila bon courage pour la suite