Wie kann ich drucken Sie die escape-Zeichen als Zeichen?
Ich versuche, drucken Sie die escape-Zeichen, als Zeichen oder Zeichenfolgen, die mithilfe dieses Codes:
while((c = fgetc(fp))!= EOF)
{
if(c == '\0')
{
printf(" \0");
}
else if(c == '\a')
{
printf(" \a");
}
else if(c == '\b')
{
printf(" \b");
}
else if(c == '\f')
{
printf(" \f");
}
else if(c == '\n')
{
printf(" \n");
}
else if(c == '\r')
{
printf(" \r");
}
else if(c == '\t')
{
printf(" \t");
}
else if(c == '\v')
{
printf(" \v");
}
}
aber wenn ich versuche, es tatsächlich druckt die escape-Sequenz.
verwenden Sie doppelte slashes ` \\ `
InformationsquelleAutor user798774 | 2011-07-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Flucht der Schrägstriche (verwenden Sie
" \\a"
), damit Sie nicht zu speziell interpretiert. Auch möchten Sie vielleicht die Verwendung einer lookup-Tabelle oder einswitch
zumindest.printf(" \\0");
etc.?Yup :)) ich kopieren / eingefügt, danke 🙂
Danke für die Hilfe
InformationsquelleAutor cnicutar
Backslashes in string-Literale müssen escaped werden; statt
"\0"
müssen Sie"\\0"
.Einer lookup-Tabelle macht es vielleicht weniger schmerzhaft:
Ja, die Mehrheit der Einträge in
ecs
sind, wird NULL; der Nachteil ist, dass ich nicht haben, um sorgen über die Zuordnung der Charakter-Wert der array-index.InformationsquelleAutor John Bode
Für die, die wir brauchen, um verwenden Sie einen doppelten umgekehrten Schrägstrich.
Beispiele:
Sollte für Sie arbeiten!
InformationsquelleAutor aibk01
Wenn Sie wollen, zu entkommen
%d
innerhalbprintf
zu ermöglichen, die Sie tatsächlich drucken Sie die Zeichen "%d":InformationsquelleAutor dave tumbledrier