里面字符转换十进制是怎么一回事,求解答
#include<iostream>using namespace std;
void main(){
int i,chan=0;
char orig[100];
cout<<"input the numbers:";
cin>>orig;
for(i=0;orig[i]!='\0';i++)
chan=chan*2+(orig[i]-48);/*字符转换成十进制数*/
cout<<chan<<endl;;
}
程序代码:#include <iostream>
#include <string>
using namespace std;
int main( void )
{
std::string s;
cin >> s;
unsigned n = 0;
for( size_t i=0; i!=s.size() && s[i]>='0' && s[i]<='9'; ++i )
n = n*10 + (s[i]-'0');
cout << n << endl;
return 0;
}假如你不想自己写代码,还可以直接用C++标准库中的 std::stoi 函数