在C#中将字符串转换为double而不使用parse或tryparse

问题描述 投票:0回答:1

如何使用不包含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); 
} 
string parsing double
1个回答
0
投票

我想我现在明白了这个问题。如果是这样,那么答案是肯定的。

long是整数类型,因此一次处理一个数字是相当简单的。

double是一个浮动十进制类型,所以你必须找到一种方法来处理中间的小数周期。

这是一个课堂作业还是你绝对必须自己编写这些代码的东西?如果没有,请考虑使用已经存在的库函数,例如stod:http://www.cplusplus.com/reference/string/stod/

© www.soinside.com 2019 - 2024. All rights reserved.