
Envoyé par
Mayti4
Ah bon, pourquoi ? Quelle est l'alternative ?
Parceque trop de gens font l'amalgame "char * = chaine" alors que c'est pas aussi simple..
L'alternative c'est d'utiliser des "char []" quand on sait que ça fait referrence à tableau de caracteres, d'utiliser des "const char *" ou des "const char[]" quand la zone pointée est read only.
L'alternative c'est de specifier des types pour savoir d'où provient la "chaine" et qu'est ce qu'on peut en faire.
Par exemple, j'ai été plutot fier de creer le type
typedef const char * bd_str;
pour tout ce qui est lu dans une base mysql et retourné par mysql_fetch_row()
Ainsi que le type
typedef char * allocated_str;
pour qu'on sache que ce genre de "chaine" doit être libérée par un free().
etc..
Partager