En C, je peux dire un espace blanc dans une chaîne a un type NULL, ou autre chose?
En C, ce qui représente le caractère la fin d'une chaîne?dans les chaînes C, NULL, espaces blancs
Répondre
La null character (valeur ASCII 0, '\0'
comme un caractère littéral) termine une chaîne en C. Ce caractère est pas généralement considéré comme un caractère d'espacement.
L'espace au milieu de cette chaîne, par exemple: "Hello world"
est le caractère avec la valeur ASCII 32. Ce n'est pas la même que NULL ou \0
.
En C, je peux dire un espace blanc dans une chaîne a un type NULL, ou quelque chose d'autre ?
Je ne suis pas sûr de ce que vous entendez par un type NULL. Un espace blanc est un espace ou une tabulation ou un retour chariot. En C, quel caractère représente la fin d'une chaîne? Le caractère '\0'
est la fin d'une chaîne.
Le caractère de fin est un octet dont la valeur 0. A exprimé comme un caractère littéral, il est '\0'
.
Votre première question sur l'espace blanc ayant un type NULL ne fait aucun sens.
Les caractères suivants sont considérés comme des "blancs" dans le sens où la isspace fonction renvoie non nulle():
- espace (ASCII 0x32, C littéral
' '
) - onglet (ASCII 0x09, C littéral
'\t'
) - onglet vertical (ASCII 0x0B, C littéral)
- saut de page (ASCII 0x0C, C littéral
'\f'
) - retour chariot (ASCII 0x0E, C littéral
'\r'
) - saut de ligne (ASCII 0x0A, C littéral
'\n'
)
Le terminateur de chaîne est le caractère ASCII NUL (0x00); il n'a généralement aucun effet sur le curseur si vous tentez de le sortir vers une console ou un terminal.
Anecdote: NUL est codé comme zéro car il correspond au chef de bande de papier blanc. DEL est codée comme 0x7f (ou parfois 0xFF), car il correspond à l'ensemble des perforations sur une bande de papier, et ce que l'on appelait rubout indiquant qu'il a été utilisé pour corriger les erreurs sans nécessiter qu'un opérateur repunch une bande entière. – RBerteig
@RBerteig: Intéressant. Et merci pour ce "nettoyage" – Clifford
En fait, le nom du caractère ASCII qui met fin à une chaîne est NUL – EvilTeach