Bonjour,
Dans les chaînes de caractères à l'intérieur d'un programme C/C++, certains caractères sont interdits et doivent être remplacés par des "séquences escape", c'est à dire un backslash (\) suivi d'un caractère :
- Le guillemet
" sert de délimiteur, donc si on veut l'utiliser dans une chaîne il faut le remplacer par
\" (ex:
"voici un \" dans une chaîne" ou encore
"5°17'34\"").
- Idem avec l'apostrophe pour le coder lui-même dans un caractère :
'\'' (apostrophe backslash apostrophe apostrophe)
- le backslah
\ sert à introduire les séquences escape, donc si on veut l'utiliser dans une chaîne il faut le doubler
\\ (c'est aussi une séquence escape !).
- Le slash
/ et l'undercore
_ sont des caractères qui ne posent aucun problème dans les chaînes C/C++.
A noter que dans les chemins d'accès à un fichier on peut utiliser les slashes
/ à la place des backslashes
\ (
\\ en fait !), ex:
FILE* p = fopen("C:\\Temp\\Essai.txt","r"); est identique à
FILE* p = fopen("C:/Temp/Essai.txt","r"); mais pas avec l'instruction
system() puisque la chaîne est passée au système et que lui ne reconnaît pas les slashes dans les chemins d'accès, ex :
system("dir C:\\Temp"); est OK mais
system("dir C:/Temp"); est refusé.
Jean-François