Quelle place occupe une chaîne de caractère ? En principe, un caractère occupe un octet. À chaque valeur comprise 
entre  0  et  255  est  associé  un  caractère.  C’est  le  principe  de  l’ASCII  "American  Standard  Code  for  Information 
Interchange",  norme  de  codage  des  caractères  la  plus  connue  et  la  plus  utilisée.  La  table  ASCII,  inventée  par  les 
américains,  contient  à  l’origine  les  128  caractères  utiles  pour  écrire  en  anglais.  Par  défaut  elle  ne  contient  pas  les 
accents. Or la table ASCII peut contenir 256 caractères. Les 128 autres (huitième bit à un) contiennent des caractères 
semi­graphiques  et  des  caractères  spécifiques  à  certaines  langues,  typiquement  le  français,  pour  les  caractères 
accentués. On parle alors de page de code ou de charset. Ces pages font l’objet d’une normalisation, par exemple la 
norme ISO 8859­15 qui est la page d’Europe de l’Ouest, avec le caractère de l’euro "€". Dans la plupart des langages 
ce codage sur un octet suffit et ainsi une chaîne de caractères de 50 caractères occupe 50 octets. 
En pseudo­code algorithmique, les chaînes de caractères sont placées entre guillemets pour deux raisons : 
Java dispose d’un type spécial pour les chaînes de caractères appelé "String". L’exemple suivant montre deux moyens 
de placer du texte dans une chaîne. Il est possible de le faire dès la déclaration de la variable (c’est d’ailleurs possible 
directement pour la plupart des types), soit ensuite par affectation. 
class chap2_string1 {
public static void main(String[] args) {
String texte="Hello World !";
String text2;
text2="Bonjour les amis";
System.out.println(texte);
System.out.println(text2);
}
}
d. Le type booléen 
Pour déterminer si une affirmation est vraie ou fausse, l’ordinateur doit se baser sur le résultat de cette affirmation. En 
informatique, on emploie plus volontiers la notion d’expression et d’évaluation de cette expression. Une expression 
peut être décrite comme étant tout ce qui peut fournir une valeur que l’ordinateur peut déterminer, stocker, évaluer. 
Par exemple, l’affirmation "a>b" selon laquelle a est supérieur à b. Si a vaut 3 et b vaut 2, l’affirmation est vraie. Si 
maintenant a vaut 1 et b vaut 2, l’affirmation est fausse. Dans les deux cas "a>b" est une expression qui vaut soit 
vrai, soit faux. C’est le cas le plus simple, mais aussi le plus courant et le plus pratique comme vous le verrez lors des 
tests et des conditions. 
Comment  l’ordinateur  détermine­t­il  ce  qui  est  vrai  et  faux  ?  C’est  le  rôle,  dans  l’architecture  de  Von  Neumann,  de 
l’UAL.  Sous  quelle  forme  l’ordinateur  se  représente­t­il  ce  qui  est  vrai  ou  faux  ?  Sous  forme  numérique,  comme 
toujours. Tout ce qui retourne un résultat différent de zéro (0) est considéré comme étant vrai, donc si le résultat vaut 
zéro (0) alors il sera considéré comme faux. Avant de considérer cette définition comme exacte, renseignez­vous tout 
de  même  car  certains  langages  (comme  l’interpréteur  de  commande  Unix)  font  l’inverse  !  Cependant  dans  des 
langages comme Java ou le C, 1 est vrai, 0 est faux. 
Pour représenter les valeurs vrai et faux, il suffit de deux chiffres, 0 et 1. Combien faut­il de place pour stocker ces 
deux valeurs ? Un seul bit ! En pratique, les langages gèrent les booléens de plusieurs manières. Certains créent des 
"champs"  de  bits  dans  un  même  octet,  d’autres  utilisent  un  octet  complet,  etc.  Cependant,  plusieurs  langages 
proposent le type booléen, très pratique. 
Dans la pratique, ces langages proposent des constantes (des variables qui prennent une valeur une fois pour toute) 
spéciales pour représenter les valeurs vrai et faux : 
q TRUE pour vrai 
q FALSE pour faux 
1.  Éviter une ambiguïté entre les nombres sous forme de chaîne de caractères et les nombres 
au format numérique. Certains langages ne font certes pas directement la différence (c’est 
selon le contexte d’utilisation) mais avec d’autres c’est catastrophique. La suite de 
caractères 1,2,3 représente­t­elle le nombre 123 et stockée ainsi en mémoire sous forme 
binaire dans un octet de la mémoire, ou la chaîne "123" stockée ainsi en mémoire sous 
forme de codes ASCII, soit un pour chaque caractère ? Les guillemets évitent les erreurs 
d’interprétations. 
2.  Ne pas confondre le nom de la variable avec son contenu, notamment lors d’une affectation. 
Ainsi, quand vous affecterez un valeur à une variable, si celle­ci est entre guillemets vous lui 
affecterez une chaîne de caractères, si c’est un nombre, ce sera ce nombre (sachant que le 
nom d’une variable ne peut pas être constitué uniquement de chiffres), et enfin si ce n’est ni 
une chaîne ni un chiffre, c’est une variable. Dans ce cas la première variable recevra comme 
valeur celle de la seconde qui lui est affectée. Ne pas respecter ce principe est une cause 
d’erreur grave et néanmoins commune. 
- 5 -
© ENI Editions - All rigths reserved - Jonifar lina
26
Précédent

- 26/220

Suivant