[C] Piti probleme avec les int<>char
César
-
César -
César -
Bonjour voilà un chti bout de code :
else if ((temp[0]>=1)&&(temp[0]<=0))
{
while ((temp[j]>=1)&&(temp[j]<=0))
{
strcat(numByFile,temp[j]);
j++;
}
compteur = compteur+(int)numByFile;
}
temp[0] est un char ... qui peut avoir comme valeur 0 ==> 9 ou A ==> Z
Je veux que si c'est un chiffre, il rentre dans mon if, mais la le test fonctionne pas ..
une idée ?
else if ((temp[0]>=1)&&(temp[0]<=0))
{
while ((temp[j]>=1)&&(temp[j]<=0))
{
strcat(numByFile,temp[j]);
j++;
}
compteur = compteur+(int)numByFile;
}
temp[0] est un char ... qui peut avoir comme valeur 0 ==> 9 ou A ==> Z
Je veux que si c'est un chiffre, il rentre dans mon if, mais la le test fonctionne pas ..
une idée ?
A voir également:
- [C] Piti probleme avec les int<>char
- Coco char - Accueil - Réseaux sociaux
- Int converter - Télécharger - Bureautique
- Remplaçant de Coco : quelles solutions pour tchater gratuitement en ligne ? - Accueil - Réseaux sociaux
- Char(10) excel francais ✓ - Forum Excel
- Expecting value: line 1 column 1 (char 0) ✓ - Forum MacOS
2 réponses
Salut !
bah la ce que tu fais en tapant ca : ((temp[0]>=1)&&(temp[0]<=0)), c'est que tu compares un char avec un int
Donc tu devrais comparer ton temp[0] avec les char '1' et '0'
pour comparer les codes ASCII
en plus c'est pas plutot ((temp[0]>='0')&&(temp[0]<='9')) qu'il faudrait faire comme test ?
bah la ce que tu fais en tapant ca : ((temp[0]>=1)&&(temp[0]<=0)), c'est que tu compares un char avec un int
Donc tu devrais comparer ton temp[0] avec les char '1' et '0'
pour comparer les codes ASCII
en plus c'est pas plutot ((temp[0]>='0')&&(temp[0]<='9')) qu'il faudrait faire comme test ?
Mais j'ai trouvé la fonction isdigit qui fait très bien :)