【问题标题】:If a standard C++ library function returns an int for a char value, does it need to be casted?如果标准 C++ 库函数为 char 值返回 int,是否需要强制转换?
【发布时间】:2013-07-04 21:19:57
【问题描述】:

例如 ifstream 函数 ifstream 文件; infile.peek() //返回一个整数

我需要将此 int 返回值转换为 char 还是可以直接将其与另一个 char 进行比较? 如果是后者,这是否意味着 char to char 比较只是检查整数 ascii 值是否相同?

谢谢。

【问题讨论】:

  • 不,但如果您想将其与EOF 进行比较(我有一种感觉...),请将其存储在int 中,而不是char。或者直接使用返回值。

标签: c++ char int ifstream c++-standard-library


【解决方案1】:

将其与 char 文字(例如 'c')进行比较应该可以工作,因为 Integral Promotion

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-26
    • 1970-01-01
    • 1970-01-01
    • 2011-04-03
    相关资源
    最近更新 更多