使用[0x ...]

时间:2018-11-07 23:31:10

标签: c arrays

在将fgets的数据放入char数组的程序中,array的声明如下:

char line[0x400];

这样的声明是否允许向数组输入更多数据?我不明白为什么不使用:

char line[400];

2 个答案:

答案 0 :(得分:1)

0x开头的值在C和C ++中解释为十六进制值。所以

char line[0x400];

声明一个char的数组,其中包含1024个元素,并且

char line[400];

char组成的400个元素组成的数组。

答案 1 :(得分:0)

0x400hexadecimal的表示形式。通常,当您看到0x<number>格式的数字时,表示该数字表示为十六进制。

此外,https://www.wolframalpha.com/input/?i=dec(0x400)。 所以是的,第一个数组大了(624个位置)。