如何使用不包含parse或tryparse的方法将字符串转换为double?我有将字符串转换为long的程序,double是否会相同?我是一个完整的新手。
以下OP注释中的代码段:
public static bool isLong(string s) {
bool n = true;
int a = 0;
s = s.Trim();
for (a = 0; (a < s.Length); a = a + 1) {
n = n && ((s[a] >= '0') && (s[a] <= '9'));
}
return (n);
}
public static long toLong(string s) {
long ret = 0;
int a;
s = s.Trim();
if (isLong(s)) {
for (a = 0; (a< s.Length); a = a + 1) {
ret = (ret * 10) + (s[i] - '0');
}
} else {
}
return (ret);
}
答案 0 :(得分:0)
我想我现在已经明白了这个问题。如果是这样,答案是肯定的。
long是整数类型,因此一次处理一位数字非常简单。
double是浮点十进制类型,因此您必须找出一种处理中间小数点的方法。
这是类分配还是您绝对必须自己编写此代码的东西?如果没有,请考虑使用为此目的已经存在的库函数,例如stod:http://www.cplusplus.com/reference/string/stod/