'\0' : marque la fin d'un tableau de caractères

 

char   tableauDeCaractères[nbDeCar+1]

+1 pour '\0' 

 

 

# include <string.h>

 

strlen(tableauDeCaractères)

renvoie un entier

® longueur utile de la chaîne (ne compte pas '\0')

 

strcmp(chaîne1,chaîne2)

renvoie chaîne1 – chaîne2

   > 0 Þ chaîne1 > chaîne2 Þ chaîne2 plus proche de A

   0 : chaînes identiques

   < 0 Þ chaîne1 < chaîne2 Þ chaîne1 plus proche de A

® comparaison ordre alphabétique

Rappel : code ASCII : MAJ<min

 

strcpy(chaîneDestination,chaîneSource)

Attn : vérifier que chaîneDestination est suffisamment grande pour accueillir chaîneSource (sinon accès erronés)

Attn : pas d'affectation entre des chaînes de caractères.

 

strcat(chaîneDestination,chaîneSource)

® concatène la chaîneSource à la fin de la chaîneDestination

Attn : chaîneDestination doit être suffisamment grande pour accueillir la somme des 2 chaînes sinon accès erronés

 

Pour éviter le débordement (accès erronés)

char   chaîneDestination[tailleMax];

if (tailleCh1+tailleCh2  < tailleMax)

Attn : < compte le '\0'

 

 

cin

cin >>

cin.width ( )

cin.get( )

cin.getline( )

' ' = séparateur

 

' ' n'est pas un délimiteur

'\n' délimiteur par défaut

saisit tout ce qu'il ya dans le buffer

saisit nbMax-1 caractères

(le dernier est réservé pour '\0')

 

 

carDélim va dans le buffer du clavier

carDélim est enlevé du buffer

'\n' : retour chariot

 

cin >> tableau           

 

cin.width(nbMax)

précède toujours un cin>>

Rq : nbMAX prend en compte le '\0'

Attn : la taille du tableau n'est pas vérifiée, accès erroné possible !!

 

cin.get(tabDest,nbMax,carDélim)

cin.getline(tabDest,nbMax,carDélim)

 

cin.ignore(nb_de_car_à_ignorer,carDélim)

cin.putback(car_à_remettre_dans_le_buffer)

 

Tableau de chaînes de caractères = tableau 2D

 

Rq : cin.get( ) et cin.getline( )mettent '\0' à la fin d'un tableau de caractères