在我看来,当终止一个字符串时,逻辑上char c=0
相当于char c='\0'
,因为"null"(ASCII 0)字节是0
,但通常人们倾向于使用'\0'
.这纯粹是出于偏好,还是应该是一种更好的"实践"?
什么是首选?
EDIT: K&R says:"字符常量'\0'
表示值为零的字符,即空字符.通常用'\0'
代替0
来强调某些表达式的字符性质,但数值仅为0
.
在我看来,当终止一个字符串时,逻辑上char c=0
相当于char c='\0'
,因为"null"(ASCII 0)字节是0
,但通常人们倾向于使用'\0'
.这纯粹是出于偏好,还是应该是一种更好的"实践"?
什么是首选?
EDIT: K&R says:"字符常量'\0'
表示值为零的字符,即空字符.通常用'\0'
代替0
来强调某些表达式的字符性质,但数值仅为0
.
http://en.wikipedia.org/wiki/Ascii#ASCII_control_code_chart
Binary Oct Dec Hex Abbr Unicode Control char C Escape code Name
0000000 000 0 00 NUL ␀ ^@ \0 Null character
没有什么不同,但更习惯用的是'\0'
.
将其记为char c = 0;
可能意味着您打算将其用作数字(例如计数器).'\0'
是明确的.