Majuscule ? [Résolu]

Signaler
Messages postés
215
Date d'inscription
mardi 21 janvier 2003
Statut
Membre
Dernière intervention
21 août 2011
-
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
-
Bonjour,

Je cherche a savoir si la chaine de caractère contenue dans un fichier text est en majuscule mais je ne sait pas comment faire.

Pour le moment je lis mon fichier ligne par ligne et c'est la que je bloque comment faire pour savoir si il y a des caractère en majuscule ??

Quelqun peut m'aider ??

Merci.
Bonne journée
Norton.

9 réponses

Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Statut
Membre
Dernière intervention
30 juin 2013
13
Tu compares simplement ta chaîne de caractères avec la même mais cette fois forcée en majuscules.
_______________________________________________________________________
VB.NETis good ...VB6is better <f></f>
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
Suffis simplement de tester chaque caractères.

if(c <= 'a' && c >= 'z') return FALSE;

Vite fait, devrait donner quelque chose comme:

BOOL IsUpper (char *src)
{
    while(*src) {
        if(*src >= 'a' && *src <= 'z') return FALSE;
        src++;
    }

    return TRUE;
}

C++ (@++)<!--
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
Oups:
"if(c <= 'a' && c >= 'z') return FALSE;"
C'est l'inverse
if(c >= 'a' && c <= 'z') return FALSE;

C++ (@++)<!--
Messages postés
215
Date d'inscription
mardi 21 janvier 2003
Statut
Membre
Dernière intervention
21 août 2011

Bonjour,
Merci pour votre aide.
Ca fonctionne nikel maintenant.

++
Norton
Messages postés
549
Date d'inscription
samedi 6 septembre 2003
Statut
Membre
Dernière intervention
6 mars 2010

Bonjour,


Il y a aussi la fonction isupper.

Matt...
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
isupper ne test qu'un seul caractère.
De plus, comme je l'expliquais dans un précédent post, cette fonction est complètement inutile. C'est dans la même fournée que strchr et compagnie.
Un simple if et le tour est joué.

C++ (@++)<!--
Messages postés
549
Date d'inscription
samedi 6 septembre 2003
Statut
Membre
Dernière intervention
6 mars 2010

Bonsoir,

Inutile, peut-être mais elle evite des erreurs du style if(c <= 'a' && c >= 'z') return 0;

Matt...
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
Il s'agit ici d'une simple erreur d'inattention, rien de bien mortel. Ça se repère très vite. Et puis, si il fallait faire une fonction pour chaque manipulations suspectes de causer une faute de ce genre, le C# aurait été déclaré "langage le plus rapide du monde" depuis bien longtemps.

C++ (@++)<!--
Messages postés
3212
Date d'inscription
lundi 7 novembre 2005
Statut
Membre
Dernière intervention
16 février 2009
15
"Il s'agit ici d'une simple erreur d'inattention"
Je reformule:
"Il s'agit ici d'une erreur d'inattention très simple"

C++ (@++)<!--