为什么我用之后i.length还是非法的语句?不能这么写吗?那我想逐位读取未知长度的string
并将其累加要怎么写?
void main() {
int j;
string i;
cout << "请输入一个数字" << endl;
cin >> i;
cout << "请输入进制" << endl;
cin >> j;
switch (j)
{
case 10:cout.setf(ios::hex);
{int a;
{int b = 0;
for (a = 0; a < i.length; a++)
b = b + a;
cout << b << endl;
cout.unsetf(ios::hex);
break; }
}
i.length() ??
String不能直接强转成long,应该用下面的语法:
long l = Long.parseLong([String]);
因为在java中,数据类型只识别10进制,是不是别16进制的,所以你把它转换成long的时候它自动转换成10进制了
c++有学过,这个还真不懂,,涉及到进制问题。。学到了。