[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 ?
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 ? -
Commùent on fait pour additionner un char u plusierus chars ..
char chaine[4] = {'1','5','3',\0,''}
int compt = 3;
je voudrais avoir :
resultat = compt + chaine = 156 ..
Comment je peux fairez ça ..?
Merci