# Palindrome avec cactères codés en utf8

**URL:** <https://www.debian-fr.org/t/palindrome-avec-cacteres-codes-en-utf8/32991>\
**Category:** Programmation\
**Created:** [Février 21, 2016, 2:41 UTC](https://www.debian-fr.org/t/palindrome-avec-cacteres-codes-en-utf8/32991 "2016-02-21T02:41:59Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![zerimbak](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/z/cc9497/32.png) [@zerimbak](https://www.debian-fr.org/u/zerimbak)\
**Post date:** [Février 21, 2016, 2:41 UTC](https://www.debian-fr.org/t/palindrome-avec-cacteres-codes-en-utf8/32991/1 "2016-02-21T02:41:59Z")

</div>

bonsoir,

j’ai fait un programme en C qui teste si une chaine est un palindrome, cela marche tant que les caractères sont de type ascii  
ma question est la suivante :  
comment tester l’égalité de deux caractères codés en utf8 ?  
merci !

---

<div class="post-metadata">

**Author:** ![branch](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/b/ee7513/32.png) [@branch](https://www.debian-fr.org/u/branch)\
**Post date:** [Février 21, 2016, 2:47 UTC](https://www.debian-fr.org/t/palindrome-avec-cacteres-codes-en-utf8/32991/2 "2016-02-21T02:47:59Z")

</div>

Bonjour,

Regarde comment est formé un caractère UTF-8 :

[http://fr.wikipedia.org/wiki/UTF-8](http://fr.wikipedia.org/wiki/UTF-8#Description)

On peut déterminer la taille d’un caractère UTF-8 en examinant les bits du premier octet :

- 0xxxxxxx : 1 octet
- 110xxxxx : 2 octets
- 1110xxxx : 3 octets
- 11110xxx : 4 octets

Je te conseille d’utiliser la calculatrice (gnome-calculator) en mode “programmation”, pour pouvoir modifier les bits des nombres directement. Par exemple, pour tester si le premier bit est à zéro, il suffit de regarder si le premier octet est plus petit ou égal à 127.

Une fois que tu connais la taille des deux caractères UTF-8 à comparer :

- s’ils ont la même taille, il faut que tout les octets du premier caractère soient identiques aux octets du deuxième
- s’ils n’ont pas la même taille, ils sont différents

Bonne chance.

---

<div class="post-metadata">

**Author:** ![zerimbak](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/z/cc9497/32.png) [@zerimbak](https://www.debian-fr.org/u/zerimbak)\
**Post date:** [Février 21, 2016, 2:57 UTC](https://www.debian-fr.org/t/palindrome-avec-cacteres-codes-en-utf8/32991/3 "2016-02-21T02:57:54Z")

</div>

Salut et merci pour ta réponse très claire.  
Dès que j’ai un peu de temps je me remets au travail …  
zerimbak
