2016-07-24 177 views
0

我知道一个分隔符是什么,但到底是什么“ t r n a”代表什么?

“\ t \ r \ n \ A”

代表在

#define DELIMITER " \t\r\n\a" 

+0

看起来像使用的一组可能的分隔符的'DEFINE' /稍后检查:空格,制表符,回车,换行,警报/笛音 – lapk

+0

它是一个包含四个不同空格字符(空格,制表符,回车符,换行符)和“alert”字符的字符串文字。很可能后面的代码会将此字符串中的任何字符视为分隔符... – Dmitri

+0

看起来像* white-space *字符给我。 Tab,回车,换行符和(奇怪的是)“响铃”(警报)。转义'\ v'会更有意义而不是'\ a'。 [这是C中所有stadnard转义列表](http://en.cppreference.com/w/c/language/escape)。 –

回答

2
\t = tab 
\r = carriage return 
\n = newline 
\a = alert (bell) 

看起来像作者正在创建一个包含这些公共分隔符的预处理器DEFINE。

1

" \t\r\n\a"是含有一个字符数组:

•的空间

" \t\r\n\a" 
^^ 

•制表符(ASCII值9)

" \t\r\n\a" 
^

•回车字符(ASCII值13 )

" \t\r\n\a" 
    ^

•换行符(ASCII值10)

" \t\r\n\a" 
    ^

•钟( “警报”)字符(ASCII值7)

" \t\r\n\a" 
     ^

NULL终止子(ASCII值0 )。

'\0' 
1

这是用于分隔字符串中的令牌的字符,通常称为分隔符。

#define命令是C编译器的预处理命令,用于创建宏变量。

CGNU manual

的第一个字符是空格

,其余为逃逸:

\t = tab 
\r = carriage return 
\n = new line 
\a = alert 

C escape sequences

相关问题