Char ** en C

Tisiph0n3 -  
 Tisiph0n3 -
Bonjour,
alors considérons un tableau de pointeurs sur des chaines de caractères un truc du style, char **argv.
*argv[1] pointe sur la 2e chaine, ma question comment faire toujours en utilisant argv pour me deplacer dans la chaine sur laquelle pointe *argv[1] sans stocker argv[1] dans un char * le nb d'arguments passés a mon programme étant inconnus d'avance.
Merci
A voir également:

2 réponses

fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Salut

J'ai pas tout compris ce que tu veux faire.
Mais dans ton programme, tu as :

int main(int argc, char **argv)

argc, te donne le nombre d'arguments augmenté de 1 (en C, le nom du programme est compté comme dans argc et stocké dans argv[0]).
Ensuite pour récupérer les arguments :
int i;
for(i=1;i<argc;i++)
    printf("%s ",argv[i]);


Pour te déplacer, tu peux par exemple, prendre le premier caractère argv[0][0]. Et tu as la fonction strlen pour connaitre la longueur de la chaine.

J'espère avoir répondu à ta question.
1
Tisiph0n3
 
oui merci t'as pas tout capté a ma question mais t'y a répondu quand mm. :D
0