C ++:这段代码中int(' 0')的用法是什么?

时间:2015-04-22 23:34:25

标签: c++ function int

此代码查找字符串中出现的所有数字的总和。

示例

  

sumUpNumbers(" 2个苹果,12个橙子")= 5 // 2 + 1 + 2

任何人都可以解释在此代码中使用int(' 0')的必要性!?

int sumUpDigits(std::string inputString) {

  int answer = 0;

  for (int i = 0; i < inputString.size(); i++) {  
    if ('1' <= inputString[i] && inputString[i] <= '9') {
      answer += int(inputString[i]) - int('0');
    }
  }

  return answer;
}

1 个答案:

答案 0 :(得分:1)

它将char转换为ASCII码以使数字超出字符串

int('9') - int('0') = 9