高位和低位字节

rim*_*ire 5 c bit console-output console-input

getchar() 和 putchar() 的原型是:

int getchar(void);

int putchar(int c);

正如它的原型所示,getchar() 函数被声明为返回一个整数。但是,您可以将此值分配给一个 char 变量,就像通常所做的那样,因为该字符包含在低位字节中。(高位字节) -order 字节通常为零。)

与 putchar() 的情况类似,即使它被声明为采用整数参数,您通常也会使用字符参数调用它。只有其参数的低位字节实际输出到屏幕。

我正在研究控制台 I/O 并遇到了这个问题。高位字节和低位字节是什么意思?

在上述上下文中它是什么意思?

use*_*321 10

在 C 中,an 的大小由int实现定义,但通常为 2 或 4 个字节。高位字节将是包含该值最大部分的字节。低位字节将是包含值的最小部分的字节。例如,如果您有一个 16 位int,并且值为 5,243,您可以将其以十六进制形式写为 0x147B。高位字节为 0x14,低位字节为 0x7B。Achar只有 1 个字节,因此它始终包含在最低位字节中。当以十六进制(从左到右的方式)写入时,低位字节将始终是最右边的 2 位数字,而高位字节将是最左边的 2 位数字(假设它们将所有字节写出) ,包括前导 0)。