Rechercher : dans
Par :

Langage C : transformer sans accent

Dernière réponse le 13 nov 2003 à 16:15:04 nicolas, le 11 nov 2003 à 13:18:59 
 Signaler ce message aux modérateurs

Bonjour à tout le monde,

Je voudrai savoir si il existe une fonction en C permettant de transformer un caractère accentué en un caractère non accentué !

ex : é -> e ou bien ù -> u (peut importe si la case et lower ou upper.
je sais qu'il existe une version du style u -> U et I -> i (c'est les fonctions toupper et tolower mais ca ne transforme pas les accents)

Je vous remercie d'avance !!

Meilleures réponses pour « Langage C : transformer sans accent » dans :
Langage C++ - Les types de données Voir Les types de données Les données manipulées en langage C++, comme en langage C, sont typées, c'est-à-dire que pour chaque donnée que l'on utilise (dans les variables par exemple) il faut préciser le type de donnée, ce qui permet de connaître...
[Langage C] C/C++ Erreur de segmentation VoirQu'est ce qu'une erreur de segmentation Vous êtes en train de développer une application sous Linux en C/C++. Tout va bien, ça compile, les oiseaux chantent. Donc vous lancez votre application pour la tester. Et vous obtenez l'un de ces deux...
Les piles en langage C VoirLes piles Requis I. INTRODUCTION II. Définition III. La construction du prototype d'un élément de la pile IV. Opérations sur les piles A. Initialisation B. Insertion d'un élément dans la pile C. Ôter un élément de la pile D. Affichage...
Les files en langage C VoirLes files - Premier Entré Premier Sorti Requis I. INTRODUCTION II. Définition III. La construction du prototype d'un élément de la file IV. Opérations sur les files A. Initialisation B. Insertion d'un élément dans la file C. Oter un...
Langage C - Les types de données VoirLes types de données Les données manipulées en langage C sont typées, c'est-à-dire que pour chaque donnée que l'on utilise (dans les variables par exemple) il faut préciser le type de donnée, ce qui permet de connaître l'occupation mémoire (le...
Langage C - Les chaînes de caractères VoirQu'est-ce qu'une chaîne de caractères ? Une chaîne de caractères (appelée string en anglais) est une suite de caractères, c'est-à-dire un ensemble de symboles faisant partie du jeu de caractères, défini par le code ASCII. En langage C, une chaîne...
Introduction au langage C VoirPetite histoire du C Le langage C a été mis au point par D.Ritchie et B.W.Kernighan au début des années 70. Leur but était de permettre de développer un langage qui permettrait d'obtenir un système d'exploitation de type UNIX portable. D.Ritchie...

1

mathprod, le 11 nov 2003 à 16:01:43

Salut,
Sachant que les lettres avec accent ne font pas parties du jeu de caractères ASCII standard, le mieux est de faire ta propre fonction de conversion qui test les code ascii.

Quand tu es sous Windows les codes ascii de la table de caractère et les codes ascii dans les prog en c/c++ ne correspondent pas, donc il faut rouver une équivalence.

Comme g pas les valeurs en tête là, y une méthode un peu bourrine pour faire une table de conversion : tu fais un programme qui écrit dans un fichier texte les caractères que tu saisie au clavier, et là tu lui met tous les caractères accentués que tu veux. Ensuite tu lis ton fichier avec le notepad, et tu insère les caractères ainsi obtenu dans le code de ta fonction de conversion. (Dans WinXP c des caractères à la con, pour les autres Windows c des carrés noirs en général).

Voilà je sais pas si c'était trèsclair et si ça t'a été utile, mais bon...

Répondre à mathprod

2

nicolas, le 12 nov 2003 à 07:46:08

Merci pour le conseil !!

Répondre à nicolas

3

Bob, le 12 nov 2003 à 19:07:41

Il devrait avoir une astuce en jouant sur 1 bit j'imagine alors si tu ajoutes ± une valeur tu devrais passer par les caractères accentués comme on le fait pour les majuscules par le clavier.

Répondre à Bob

4

Dimandja, le 12 nov 2003 à 22:35:08

Cette function en PHP s'occupe des accents; c'est facile de la reecrire dans n'importe quelle language.

il suffit de creer deux arrays: l'un avec accents et l'autre sans accents.

function remove_accents(&$str){
static $special = 'éêëèîïíìöôõóòæåâäàáãüûúùßçñýÿ';
static $replace = 'eeeeiiiioooooaaaaaaauuuuscnyy';
return strtr($str, $special, $replace);
}

Répondre à Dimandja

5

soro, le 13 nov 2003 à 16:14:50

Je m'appel soro je veut etre un grand programmeur. je veut que tu m'aide nicolas.

Répondre à soro

6

 soro, le 13 nov 2003 à 16:15:04

Je m'appel soro je veut etre un grand programmeur. je veut que tu m'aide nicolas.

Répondre à soro
Collection CommentÇaMarche.net