Convertir des char en int
Bonjour à tous
j'ai créé une structure ainsi:
Code:
1 2 3 4 5 6 7 8 9
| struct {
char com;
char nEquip;
char manip;
char param;
char nCapt;
char sens;
int16_t val;
}manCapt; |
La structure est chargée par un tableau de caractères:
Code:
1 2 3 4 5 6 7
| manCapt.com=com[1];
manCapt.nEquip=com[2];
manCapt.manip=com[3];
manCapt.param=com[4];
manCapt.nCapt=com[5];
manCapt.sens=com[6];
manCapt.val=ci(com[7])*1000 + ci(com[8])*100 + ci(com[9])*10 + ci(com[10]); |
ci est une fonction de conversion char->décimal.
Mon problème: cela fonctionne si j'ai bien un chiffre de 4 caractères mais si j'ai un chiffre à 1, 2 ou 3 caractères cela ne va plus.
Y a-t'il un moyen élégant de régler cela?