salut,
je veut savoir quelle est la fonction prédéfini qui permet de convertir un caractère en code ASCII.
merci
salut,
je veut savoir quelle est la fonction prédéfini qui permet de convertir un caractère en code ASCII.
merci
En C, un caractère est déjà un code ASCII (ou ASCII étendu, ou EBCDIC, etc.)
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Bonsoir
On peut en C représenter un caractère de plusieurs façons :
On affiche toujours la même donnée, mais avec des formats différents. Aucune conversion n'intervient.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 #include <stdio.h> int main(void) { char c = 'T'; printf("valeur decimale : %d\n", c); printf("valeur hexadecimale : %x\n", c); printf("affichage du caractere : %c\n", c); return 0; }
Cette question n'a pas de sens. La valeur d'un caractère est déjà un nombre :
Mais cette valeur n'a pas d'importance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 printf("'%c' = %d\n", 'A', 'A');
Quelle est ta vraie question ?
Tout a fait d'accords avec ce qui à été dit au dessus.
Il semblerait que beaucoup de gens pensent que le type CHAR en langage C ne sert uniquement qu'a stocker des CARACTERE sous leur forme, dirons nous, comme nous l'écrivons.
Mais il est vrais que ce qui est stocké dans une variable de type char (peut être une valeur décimale, qui sait :p) peut être vu de différentes façon (comme l'indique les bout de code un peut plus haut).
Je pense que cette mauvaise compréhension de ce type qu'est le CHAR est du au professeur ainsi qu'au cour présent sur le net.
En effet, de ce que j'ai pu voir ainsi que vu la façon dont les gens appréhendent ce type, les char n'est visiblement qu'un "conteneur" de caractères...
OR si on gère ces variables correctement (ex stocker le nombre de jours dans la semaine) il est inutile d'utiliser un type INT. Mieux vaut un bon CHAR (qui plus est UNSIGNED puisqu'il n'y aura jamais -1 jour dans la semaine) qui prendre 1 ou 2 octet en mémoire plutôt qu'un GROS INT pour 2 ou 4 (voir plus ???).
Bonne chance![]()
Dans ce que tu dis, tu oublies une chose: Un processeur x86 travaille plus vite avec des int que des char, car il est prévu pour.
Sur PC, le temps de l'optimisation en taille maladive (et surtout, prématurée) est révolu. En Embarqué, c'est différent, mais il ne faut pas faire d'optimisation prématurée non plus.
N'oublie pas qu'il y a aussi la notion de clarté du code qui s'applique...
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
n'empêche que j'ai toujours fait un booléen sur un char que sur un int...
Déjà qu'on perd de la place, alors en perdre 4 fois plus...
et d'ailleurs, vu que j'ai fait beaucoup de traitements d'images, les buffers d'images sont en général des char *, ou des unsigned char*..
Je n'ai jamais vu un format utiliser des int..
Partager