1. 程式人生 > >字符0、數字0和‘’

字符0、數字0和‘’

字符0 code nbsp ascii 十六進制 平時 data [1] data-

字符0、數字0和‘\0’的區別

Bin(二進制) Oct(八進制) Dec(十進制) Hex(十六進制) 縮寫/字符 解釋
0000 0000 0 0 00 NUT(null) 空字符
00110000 60 48 30 0 字符0

ASCII碼中 十進制數 0 表示空字符,空字符就是平時所說的 ‘\0‘。

字符 0,ASCII碼值為 十進制數 48,如:“012” 字符串中的 0 表示字符 0。

數字 0, 所說的數字 0,就是平時說的十進制數字 0,在字符串中表示 ‘\0‘,即空字符。

#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;
}

輸出:

$ ./a.out 
array[0] = 48
array[1] = 0
array[2] = 0
array[3] = 48
array[0] = 0
array[1] = 
array[2] = 
array[3] = 0

字符0、數字0和‘\0’