8PRO100 - PowerPoint PPT Presentation

About This Presentation
Title:

8PRO100

Description:

Title: 8INF119 Author: Fran ois Lemieux Last modified by: Francois Lemieux Created Date: 11/28/1999 9:16:01 PM Document presentation format: Affichage l' cran – PowerPoint PPT presentation

Number of Views:57
Avg rating:3.0/5.0
Slides: 14
Provided by: Fran177
Category:
Tags: 8pro100 | bonjour

less

Transcript and Presenter's Notes

Title: 8PRO100


1
8PRO100
Éléments de programmation
Les pointeurs de caractères
2
Constantes de type chaîne
Considérez une constante de type chaîne telle
que "Bonjour groupe" 1) Réserve 15 octets en
mémoire (14 caractères NUL) 2) Cet espace est
en lecture seulement 3) L'espace demeure toujours
accessible même si "Bonjour groupe" apparaît
dans une fonction. 4) Cette chaîne est un tableau
de caractère donc elle correspond à une
adresse en mémoire
o
r
n
j
u
o
g
r
o
B
e
p
u
\0
3
Exemple
char chaine() return "Bonjour groupe" /
retourne l'adresse du début de la chaîne
/ main() printf("p s\n",
chaine(), chaine())
108f0 Bonjour groupe
4
Différence entre tableaux et pointeurs
char tab "Bonjour groupe" / Le tableau
est initialisé avec la chaine / char p
"Bonjour groupe" / Le pointeur est initialisé
avec l'adresse de la chaîne
/
tab
o
r
n
j
u
o
g
r
o
B
e
p
u
\0
p
o
r
n
j
u
o
g
r
o
B
e
p
u
\0
5
Différence entre tableaux et pointeurs
char tab "Bonjour groupe" char p "Bonjour
groupe" tab0 'H' / Valide / p0
'H' / Non valide / p tab p0 'H' /
Valide /
tab
o
r
n
j
u
o
g
r
o
B
e
p
u
\0
p
o
r
n
j
u
o
g
r
o
B
e
p
u
\0
6
Les assignations
char tab110"Bonjour" char tab210"groupe" c
har ptab1, qtab2 M p q / p pointe
vers un nouvel endroit / M strcpy(p,q) / p
pointe toujours au même endroit. La chaîne
située à l'adresse q est copiée à l'adresse
p /
7
Les tableaux de pointeurs
char couleur "Coeur", "Carreau", "Trefle",
"Pique"
\0
C
o
u
e
r
couleur
\0
C
a
r
r
u
a
e
\0
T
r
f
e
e
l
\0
P
i
u
q
e
8
Comparaison avec les tableaux à 2 dimensions
char couleur8 "Coeur", "Carreau",
"Trefle", "Pique"
Couleur
\0
C
o
u
e
r
\0
C
a
r
r
u
a
e
\0
T
r
f
e
e
l
\0
P
i
u
q
e
Remarque Il est obligatoire de donner la seconde
dimension.
9
Passage en paramètre
void f(char tab) main() char couleur
"Coeur", "Carreau", "Trefle", "Pique" f(couleur)

\0
C
o
u
e
r
couleur
\0
C
a
r
r
u
a
e
tab
\0
T
r
f
e
e
l
\0
P
i
u
q
e
10
Les paramètres de la fonction main
Pour utiliser les paramètres de la ligne de
commande, il faut utiliser le prototype de la
fonction main suivante main(int argc, char
argv) argc Nombre darguments de la ligne de
commande argv Pointeurs sur un tableau de
chaînes de caractères. argv0 est le
nom par lequel le programme a été appelé.
argv1 est le premier paramètre
argvargc-1 est le dernier paramètre
argvargc vaut 0 (le pointeur NULL)
11
Les paramètres de la fonction main
Exemple La commade echo sur UNIX echo
bonjour groupe argc vaut 3 argv0 vaut
echo argv1 vaut bonjour argv2 vaut
groupe
\0
e
o
h
c
argv
\0
b
o
j
n
r
u
o
e
r
g
p
u
o
\0
0
12
La commande echo (version 1)
include ltstdio.hgt main(int argc, char
argv) int i for (i1 iltargc
i) printf("ss", argvi, (iltargc-1) ? " "
"") printf("\n") return 0
\0
e
o
h
c
argv
\0
b
o
j
n
r
u
o
e
r
g
p
u
o
\0
0
13
La commande echo (version 2)
include ltstdio.hgt main(int argc, char
argv) while (--argcgt0) printf("ss",
argv, (argcgt1) ? " " "") printf("\n")
return 0
\0
e
o
h
c
argv
\0
b
o
j
n
r
u
o
e
r
g
p
u
o
\0
0
Write a Comment
User Comments (0)
About PowerShow.com