我想将二进制计数转换为十进制。我的代码片段:
int main(){
string count;
char number;
int counter;
int score = 0;
cout << "Wpisz liczbę w systemie binarnym" << endl;
cin >> count;
count << endl;
counter = count.length();
for (int i = 0; i < counter; i++)
{
number = count[i];
int aaa = (int) number - '0' // is that correct ? I think not.
score = aaa * pow(2,i) + score;
}
count <<wynik;
return 0;
}
但是我的程序给出了非常奇怪的分数,例如:
输入:100(十进制 8)输出:1
输入 1000(十进制 16)输出:1
我不知道为什么。你能帮助我吗 ?我认为,这就是 char 的问题吗?我是真的吗?
谢谢,
对不起我的英语