我正在尝试编写一个函数来对字符串输入中每个字符的 ASCII 数字求和。但是,如果我没有在我的代码中提供 +48 偏移量,该函数将返回一个 -48 off 的值。这个偏移量是多少?
int sumASCII (string input) {
int index = 0;
int sum = 0;
int strLen = (int)input.length();
while (index < strLen) {
sum = (input[index] - '0') + sum + 48;
index++;
}
return sum;
}
最佳答案
“0”的 ascii 值为 48。因此,如果我们查看您的代码,并将“0”替换为 48,您可能会注意到问题....
sum = input[index] - 48 + sum + 48;
所以你不妨将其替换为:
sum += input[index];
关于c++ - 我的 sumaASCII 函数中的偏移量是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59279239/