我实在弄不明白你做这种转换是要用在什么地方。计算机的浮点数系统无法绝对精确,这是众所周知的,看起来你是要做精确的数值计算,但恐怕你不明白一旦把本身记录精确的字符串转化到二进制浮点系统中就注定丧失精确性,无论你怎么转都是浪费功夫的。要么你自己取舍精度,在某一小数位后满足要求,而若要绝对精确的数值运算,你就一定不能把数字转化成浮点数,而是始终用字符串作数字运算,那才确保精确性不丢失。VB的浮点数本身是精确的,因为它正是使用字符串记录数值,也是因此才慢了下来,我不知道你总是以为C会快的思想根源怎么会如此牢固,当你想保持精确性的时候,就必须做回同样的事情,这不是自找麻烦吗,再说了,死守VC6也是你自己的事,MS的.NET库有精确数值系统,不管是还是都可以使用,刻意放弃熟悉的BASIC语法转求C,绕那么大一个圈,完全没必要。