En C, le calcul se fait sur un int (euh... je crois), et devrait marcher.
En C++, il devrait se faire sur un char, et les débordements peuvent être drôles.
Disons que ce serait déjà mieux comme ça:
Code :
- return c + ('A' - 'a');
|
Mais pourquoi prendre des risques et réinventer la roue ?
Code :
- #include <ctype.h>
- //copie en minuscule
- void strcpylow(char* target, const char* source){
- while(*target++= tolower(*source++);
- }
- //copie en majuscules
- void strcpyup(char* target, const char* source){
- while(*target++= toupper(*source++);
- }
- //transforme en minuscule
- void strlow(char* str){
- for( ; *str= tolower(*str) ; str++ );
- }
- //transforme en majuscules
- void strup(char* str){
- for( ; *str= toupper(*str) ; str++ );
- }
|
---------------
Bricocheap: Montage de ventilo sur paté de mastic silicone