Envoyé par
Médinoc
Les chaînes littérales sont en lecture seule. Un bon compilo comme gcc, configuré avec l'option -wWrite-strings, aurait gueulé...
Démonstration :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
Project : Forums
Compiler : GNU GCC Compiler (called directly)
Directory : C:\dev\forums\
--------------------------------------------------------------------------------
Switching to target: default
Compiling: main.c
main.c: In function `main':
main.c:28: warning: initialization discards qualifiers from pointer target type
main.c: At top level:
main.c:26: warning: unused parameter 'argc'
main.c:26: warning: unused parameter 'argv'
Linking console executable: console.exe
Process terminated with status 0 (0 minutes, 3 seconds)
0 errors, 3 warnings |
Et si je mets const :
char const *chaine = "Coucou tout le monde";
1 2 3 4 5 6
|
<...>
Compiling: main.c
main.c: In function `main':
main.c:29: warning: passing arg 1 of `STR_DelBlanks' discards qualifiers from pointer target type
<...> |
Savoir configurer son compilateur fait gagner des bits...
Partager