【问题标题】:why character are called Integral type in C programming language?为什么字符在 C 编程语言中被称为 Integral 类型?
【发布时间】:2021-12-16 04:10:28
【问题描述】:

我目前正在学习 C 语言。我在研究数据类型,请告诉我,为什么字符被称为整数常量?

【问题讨论】:

  • @CherryDT ASCII 是 7 位编码,其值从 0127(含)。另请注意,如果char 是有符号或无符号的(即其范围可以是-128127),它是由实现定义的。
  • 谢谢先生为我解惑。
  • 顺便说一句,在 C 中,没有什么东西可以再称为 integral 类型了。该术语在 22 年前被转换为 integer 类型。
  • @CherryDT,这不是真的,即使在普通的现代机器上也是如此。 char 通常是介于 -128..127 之间的数字。
  • @Beginner,因为他们是。 'a' 完全等同于 65(在基于 ASCII 的编译器上)。

标签: c integer character


【解决方案1】:

因为它们是用不可修改的整数值表示的。

例如,对于 ASCII 字符,这些值的范围在 0 到 255 之间。

【讨论】:

  • 对于 ASCII 字符,它们的范围是 0 到 127。
  • ASCII 是一种 7 位编码,其值从 0127(含)。另请注意,如果char 是有符号或无符号的(即其范围可以是-128127),它是由实现定义的。
【解决方案2】:

您可以对char 类型的对象执行整数运算。例如,您可以减少或增加存储在 char 类型的对象中的值,或者增加或减少一个值。

例如,如果一个 char 类型的对象包含一个代表数字的符号,例如

char c = '5';

然后您可以通过以下方式将数字作为数字获取

int digit = c - '0';

可变数字将包含数字5

请注意,char 类型可以表现为signed charunsigned char 类型,具体取决于编译器选项。

在与 C++ 相对的 C 中,整数字符常量的类型为 int

【讨论】:

    猜你喜欢
    • 2010-11-01
    • 2017-07-19
    • 2018-11-02
    • 2017-07-31
    • 2012-05-18
    • 2020-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多