我的代码只能保证小于19位 才能成功转换
#include <iostream>
using namespace std;
long long int tonum(char ch[])
{
long long int i, clength, num=0;
for (i = 0; ch[i] != '\0'; i++)
{
}
clength = i;
cout<<clength<<endl;
for (i = 0; i < clength; i++)
{
num = num * 10 + (ch[i] - '0');
}
return num;
}
int main()
{
char ch[100];
cin >> ch;
long long int num;
num = tonum(ch);
cout << num;
}