Bases du langage C

Pages: 10 (2229 mots) Publié le: 25 février 2015
Fiche révision
Bases du langage C
Type de variables :
char qui peut mémoriser une valeur sur 8 bits comprise entre -27 (-128) et 27-1 (127),
unsigned char qui peut mémoriser une valeur sur 8 bits comprise entre 0 et 28-1 (255),
short qui peut mémoriser une valeur sur 16 bits comprise entre -215 (-32768) et 215-1 (32767),
unsigned short qui peut mémoriser une valeur sur 16 bits comprise entre 0 et216-1 (65535),
int qui peut mémoriser une valeur sur 32 bits comprise entre -231 (-2 147 483 648) et 231-1 (2
147 483 647),
unsigned int qui peut mémoriser une valeur sur 32 bits comprise entre 0 et 232-1 (4 294 967
295),
float qui peut mémoriser une valeur sur 32 bits comprise entre -3,4*1038 et 3,4*1038,
double qui peut mémoriser une valeur sur 64 bits comprise entre -1,8*10308 et 1,8*10308.Affectation
L'affectation d'une valeur à une variable se fait avec le signe =. L'élément situé à droite de ce
signa affecte l'élément situé à gauche.
Exemple :
char cutier;
char pentier;
cutier = 10;
pentier = 20;
cutier = pentier; //cutier et pentier contiennent la même valeur : 20

Opérateurs


Opérateurs arithmétiques :
- Somme : signe +,
- Différence : signe -,
- Multiplication : signe *,
-Division : signe /,
- Modulo (reste de la division entière) : signe %,
- Incrémentation : signe ++,
- Décrémentation : signe --.
Exemple :
int valeur;
int reste;
valeur = 17 ; // initialisation de valeur à 17
-> Après exécution, valeur vaut 17

valeur = valeur + 10;

//ajout de 10

-> Après exécution, valeur vaut 27

valeur = valeur - 20;

//retrait de 20

-> Après exécution, valeur vaut 7

valeur =valeur * 4;

//multiplication par 4

-> Après exécution, valeur vaut 28

valeur = valeur / 2;

//division par 2

-> Après exécution, valeur vaut 14

reste = valeur % 5;

//reste de la division de valeur par 5

-> Après exécution, valeur est inchangée, reste vaut 4



Opérateurs logiques :
- Ou (bit à bit) : signe |,
- Ou logique : signe ||,
- Et (bit à bit): signe &,
- Et logique : signe &&,
-Négation : signe !,
- Complément : signe ~
- Ou exclusif : signe ^,
- Décalage à gauche : signe <<,
- Décalage à droite : signe >>
Exemple :
unsigned char octet1 = 0x55; //initialisation par une valeur exprimée
//en hexadécimal
unsigned char octet2, octet3;
bool resultat;
octet2 = octet1 & 0x0F; //octet2 contiendra 0x05
octet2 = octet1 | 0xF0; //octet2 contiendra 0xF5
resultat = (octet1 > 0x10) &&(octet2 > 0x10);
//resultat contiendra le ET logique entre les deux propositions
//octet1 > 0x10 qui est vrai et octet2 > 0x10 qui est vrai
//aussi donc resultat sera affecté par la valeur true
resultat = !((octet1 > 0x10) || (octet2 > 0x10));
//resultat contiendra le complément du OU logique entre les
//deux propositions octet1 > 0x10 qui est vrai et comme
//l'opération est un OU logique, on peutconclure sans tester
//la seconde proposition. resultat contiendra donc false.
octet2
octet2
octet2
octet2

=
=
=
=

~octet1; //octet2 contiendra 0xAA
octet1 ^ octet2; //octet2 contiendra 0xFF
octet1 << 2;
//octet2 contiendra 0x54
octet1 >> 3; //octet2 contiendra 0x0A

Remarque : un décalage à gauche de n bits correspond à une multiplication par 2n. Un
décalage à droite de n bits correspond à unedivision par 2n.


Contractions :
Presque toutes les opérations précédentes peuvent être écrites avec une notation
"contractée".
Exemple :
int valeur;
valeur += 5;
valeur *= 9;
valeur &= 0x01

//équivalent à valeur =
//équivalent à valeur =
//équivalent à valeur =
//ce qui permet de ne
//poids faible

Etc.

-2-

valeur
valeur
valeur
garder

+ 5
* 9
& 0x01
que le bit de

Test
Les tests sontréalisés avec l'instruction if.
On peut réaliser les tests :
- d'égalité avec les signes ==,
- d'inégalité avec les signes !=,
- d'infériorité stricte avec le signe <,
- d'infériorité ou égalité avec les signes <=,
- de supériorité stricte avec le signe >,
- de supériorité ou égalité avec les signes >=.
Exemple :
int ello, erro;
. . .
if (ello == 49)
{
//code exécuté seulement si la variable ello...
Lire le document complet

Veuillez vous inscrire pour avoir accès au document.

Vous pouvez également trouver ces documents utiles

  • Bases du langage java
  • Bases du langage informatique
  • Les bases fondamentales du langage Transact SQL
  • Les bases fondamentales du langage transact sql
  • bases du c
  • bases
  • Bases de
  • Le langage

Devenez membre d'Etudier

Inscrivez-vous
c'est gratuit !