Splinter_7 a écrit :
Avec le fonction isalnum tu vas être obligé de tester chacun de tes caractères if(isalnum((unsigned char) 'é'))
etc...
|
Et tu t'es pas dit qu'il suffit de correctement tester le contenu de sa chaîne avec isalnum() et la bonne locale sans se faire chier à écrire plus de code (c'est-à-dire, en gros, 1 ligne de plus pour mettre la locale par rapport à isalnum() tout seul), et qu'en plus cette solution permet de gérer facilement plusieurs langues ?
Alors que ta super solution 1. n'est pas portable et 2. demande à maintenir un tableau annexe avec tous les caractères accentués qui sont censés être reconnus comme alphanumérique... et donc de faire une boucle de tests en plus.
Sans compter que le jour où tu dois ajouter l'allemand, tu recommences depuis le début, alors qu'avec les locales, t'as juste un test de plus à écrire pour mettre la bonne.