用string存储大数

#include <cmath>
#include <iostream>
using namespace std;

int main() {
    string n;
    while (cin >> n && n != "0") { // 注意 while 处理多个 case
        int skew = 0;
        int len = n.size();
        for (int i = 0; i < n.size(); i++,len--){
            skew += (n[i] - '0') * (pow(2,len)-1);
        }
        cout << skew << endl;
    }
}
// 64 位输出请用 printf("%lld")