Entrez deux caractères dans la même case en C

Fermé
Violet_00 Messages postés 3 Date d'inscription dimanche 18 octobre 2015 Statut Membre Dernière intervention 18 octobre 2015 - 18 oct. 2015 à 21:41
Smiley32 Messages postés 155 Date d'inscription lundi 7 juillet 2014 Statut Membre Dernière intervention 10 février 2016 - 19 oct. 2015 à 20:25
Bonsoir à tous !!

Je cherche comment en c, mettre plusieurs caractères successivement, dans une même case d'un tableau.
Prenons un exemple j'ai un fichier que je dois lire ou nous avons " 1 10"
Sachant que pour lire une à une un caractère dans un fichier j'utilise "fgetc".
Je veux rentrer dans la deuxième case du tableau "10".
Il me faut rentrer d'abord 1 dans la case 2 puis 0 dans cette même case , sans effacer le 1 rentrer juste avant.

Aidez moi svp , je galère

Merci d'avance

3 réponses

Smiley32 Messages postés 155 Date d'inscription lundi 7 juillet 2014 Statut Membre Dernière intervention 10 février 2016 23
18 oct. 2015 à 21:46
Salut,
Si veux entrer 12 dans tab[2] :

tab[2] = 1;
tab[2] = tab[2] * 10 + 2;

Je sais pas si c'est clair mais en gros,
12 = 1 * 10 + 2
0
Smiley32 Messages postés 155 Date d'inscription lundi 7 juillet 2014 Statut Membre Dernière intervention 10 février 2016 23
18 oct. 2015 à 21:50
Mais ce sont des entiers, pas des char dans ma solution donc...
0
Violet_00 Messages postés 3 Date d'inscription dimanche 18 octobre 2015 Statut Membre Dernière intervention 18 octobre 2015
18 oct. 2015 à 22:06
Voila, mais comme c'est le programme qui rentre les caractères , c'est pas assez globale . Parce que la j ai pris un exemple mais ça peut être 20, 54 ect (n'importe lequel)
0
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
18 oct. 2015 à 21:47
Bonjour,

Si tu veux rentrer plusieurs caractères dans chaque case d'un tableau, il ne faut pas considérer un tableau de caractères, mais un tableau dont chaque case sera elle même un tableau de caractères.

Plus ou moins comme ceci :
char tab[][] = { {'1'}, {'1','0'} };
0
Violet_00 Messages postés 3 Date d'inscription dimanche 18 octobre 2015 Statut Membre Dernière intervention 18 octobre 2015
18 oct. 2015 à 22:27
Ah oui effectivement, mais comme je veux apres exploiter ce 10 (additionner , le soustraire ou le multiplier a d'autre nombre), ça sera problématique
0
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
Modifié par KX le 18/10/2015 à 22:36
Si c'est de la manipulation de nombres que tu veux faire, alors il ne faut pas manipuler des caractères mais des nombres.

Soit entiers avec int ou long, soit flottants avec float ou double.

int tab[] = { 1, 10 };
0
Smiley32 Messages postés 155 Date d'inscription lundi 7 juillet 2014 Statut Membre Dernière intervention 10 février 2016 23
19 oct. 2015 à 20:25
Sinon, utilise un fscanf
0