Salut,
Est ce que vous pouvez me dire quelle est le role de cette ligne de code:
Merci d'avance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 line[strlen(line) - 1] = 0;
Salut,
Est ce que vous pouvez me dire quelle est le role de cette ligne de code:
Merci d'avance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 line[strlen(line) - 1] = 0;
line[strlen(line)] correspond toujours au dernier caractère de la chaîne, le '\0'. line[strlen(line)-1] = 0 remplace le dernier caractère qui n'est pas un '\0' en '\0'. Oui, 0 et '\0' c'est la même chose.
Exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 char s[100] = "abcd"; s[strlen(s)-1] = 0; printf("%s\n", s); /* Affiche abc */
Merci![]()
ça sert en particulier quand on fait un fgets, où la ligne lue comporte un '\n' (éventuellment un '\r').
Comme ça on écrase systématiquement le '\n'.
Partager