【问题标题】:What does (char)0 mean in c++?(char)0 在 C++ 中是什么意思?
【发布时间】:2012-04-17 18:12:03
【问题描述】:

(char)0是什么意思。

例如这是什么意思?

array[1] = (char)0;

【问题讨论】:

  • 将0分配给数组元素?演员阵容可能是多余的。
  • 您的问题标题是 C++,但您的标签包含 C。它是什么? (至少在理论上,答案因语言而异。)

标签: c++ arrays char


【解决方案1】:

这是一个 C 风格的演员表。也就是说,它将0int 类型的文字)转换为char\0 字符)。只需使用 '\0' 文字就可以完全避免这种转换。

【讨论】:

  • 这样做的目的是什么?
  • 不在 C 中,'\0' 的类型为 int
  • @dan04 问题是 C++。
  • @Ravindu 是的,没用。只需使用'\0' 而不是(char)0。如果linestd::string,那么使用operator[] 而不是at(),如果你确定你永远不会越界。
  • @Ravindu '\0' 是一个字符常量,它是空字符(ASCII 中的 0)。
【解决方案2】:

这是0 转换为char,即'\0'

【讨论】:

  • 一般没有,因为数字(字节范围内)和字符之间的键入在 C 中很弱。
【解决方案3】:

您正在一个 int(整数)(0) 转换为一个字符 (char)。

铸造意味着你正在改变类型。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-10-17
    • 1970-01-01
    • 1970-01-01
    • 2019-12-08
    • 2017-10-31
    • 1970-01-01
    • 2020-04-02
    相关资源
    最近更新 更多