https://www.cnblogs.com/shelmean/p/9949490.html
0 character, the difference between the number 0 and '\ 0' in
Bin
|
Oct |
Dec
|
Hex
|
Abbreviations / character
|
Explanation
|
0000 0000
|
0
|
0
|
00
|
NUT(null)
|
Null character
|
00110000
|
60
|
48
|
30
|
0
|
Character 0
|
ASCII value 0 represents a null character, null character usually called '\ 0'.
Characters '0', the value of the ASCII code 48, such as: "012" indicates the character string 0 '0'.
Numbers 0, said number 0, is usually said decimal digits 0, 0 ASCII code which represents '\ 0' in the string, i.e., the null character.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
#include <stdio.h>
#include <string.h>
int
main()
{
char
array[4] = {0};
array[0] =
'0'
;
array[1] = 0;
array[2] =
'\0'
;
array[3] = 48;
printf
(
"array[0] = %d\n"
, array[0]);
//字符0: '0' <==> 48(ASCII)
printf
(
"array[1] = %d\n"
, array[1]);
printf
(
"array[2] = %d\n"
, array[2]);
printf
(
"array[3] = %d\n"
, array[3]);
printf
(
"array[0] = %c\n"
, array[0]);
//字符0
printf
(
"array[1] = %c\n"
, array[1]);
//空字符 0(ASCII)
printf
(
"array[2] = %c\n"
, array[2]);
//空字符 '\0'
printf
(
"array[3] = %c\n"
, array[3]);
//字符0: 48(ASCII) <==> '0'
return
0;
}
|
Output:
$ ./a.out array[0] = 48 array[1] = 0 array[2] = 0 array[3] = 48 array[0] = 0 array[1] = array[2] = array[3] = 0