J'ai un tableau de caractères qui est de la forme:Comment obtenir « sous-chaîne » à partir d'un tableau de caractères en C
[17 caractères, un onglet char, 17 caractères, un onglet char, 17 caractères, un onglet char, un caractère représentant un nombre compris entre 1 et 4 chiffres, null-byte]
Je souhaite stocker les caractères situés entre le caractère tab et l'octet nul dans une nouvelle variable.
Exemple 1: Ce pourrait être mon omble chevalier Tableau:
[1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6 , 7, \ t, 1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7, \ t, 1,2,3,4 , 5,6,7,8,9,0,1,2,3,4,5,6,7, \ t, 3,4, \ 0]
Et je voudrais sauver l'int 34 dans une variable appelée x.
Exemple 2: Ce pourrait être mon omble chevalier Tableau:
[1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6 , 7, \ t, 1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7, \ t, 1,2,3,4 , 5,6,7,8,9,0,1,2,3,4,5,6,7, \ t, 5,9,9, \ 0]
Et je voudrais sauver le int 599 dans une variable appelée x.
Je peux le faire facilement si je connais le nombre de chiffres de ce nombre, mais je ne suis pas sûr de savoir comment résoudre le problème d'avoir un nombre de longueur inconnue.
Toute aide serait grandement appréciée.
Recherchez 'memcpy()'. –
Merci, mais à la lecture de la documentation pour memcpy(), il semble que vous ne pouvez pas choisir un index de départ autre que 0 (ie vous ne pouvez obtenir que les n premiers caractères de la chaîne), plutôt que n et l'indice b. – Mathboy
Bien sûr, vous pouvez, via l'arithmétique du pointeur. Ajoutez simplement 'a' à la valeur du pointeur. –