【问题标题】:How to handle values greater than 9 with ascii values in c++如何在c ++中使用ascii值处理大于9的值
【发布时间】:2014-08-11 19:08:32
【问题描述】:

我知道当数字介于 1 和 9 之间时,您必须执行以下操作才能将 int 转换为 char 字符:

例如。

char _val = val + '0';

我的问题是你如何处理上述格式中大于 9 的值?

【问题讨论】:

  • 嗯,你需要两个 ascii 字符,不是吗?对于某些人来说,这听起来像是一份工作。或者如果你聪明的话,使用%10/10 循环。
  • 您似乎在寻找itoa 函数?
  • @martin, itoa 不是标准 C++ 函数。
  • @chris 是的,确实如此,而且和所问的相反,我应该仔细阅读,所以合适的非标准函数是atoi

标签: c++ char ascii


【解决方案1】:

如果你有 c++11,我会说使用 std::to_string,如 cmets 中所述。如果你有一个旧的编译器,我建议 boost::lexical_cast 或者如果你不能使用 boost,那么使用 std::ostringstream

【讨论】:

    猜你喜欢
    • 2014-06-20
    • 2021-06-05
    • 1970-01-01
    • 1970-01-01
    • 2020-09-08
    • 1970-01-01
    • 2021-03-04
    • 1970-01-01
    • 2021-03-04
    相关资源
    最近更新 更多