当xutility错误发生时,我必须做什么

When the xutility error occured what I have to do

本文关键字:必须做 什么 xutility 错误      更新时间:2023-10-16

我想制作一个程序来计算某个数字的每个数字的数量。该数字是来自控制台的三个整数输入的倍数。我将数字转换为字符串以进行计数并使用计数功能。

#include<iostream>
#include<algorithm>
#include<string>
#include<stdlib.h>
using namespace std;
int main() {
    int a;
    int b;
    int c;
    cin >> a;
    cin >> b;
    cin >> c;
    int multi = a * b * c;
    string str_multi = to_string(multi);
    for (int a = 0; a <= 9;a++) {
        char* tmp;
        _itoa_s(a, tmp,2, 10);
        cout << count(str_multi.begin(), str_multi.end(), tmp) << endl;
    }
}

我收到错误代码 C2446。错误说,"'==':未从'const_TY'转换为'int'"此错误出现在 xutility 文件中。我认为问题是计数函数或_iota_s功能,但我不知道如何解决这个问题。

在这种情况下,

std::count的最后一个参数必须是char(或可转换为字符(,因此只需将循环更改为:

for (int a = '0'; a <= '9'; a++) {
   cout << count(str_multi.begin(), str_multi.end(), a) << endl;
}

现场演示