除非一个库函数编写的太滥,否则不可能比用户编的更差。不过多数商业软件既然敢拿出来卖钱,肯定是有自己的优点的,我们应该利用前人已有的成果,而不应该做简单的重复劳动。
atof()这个函数GCC AVR是支持的,应用在mega芯片上,没有问题。另外一个贴子楼主提问的问题,还是存在类似情况。楼上建议自己编写函数不可取,GCC AVR也是支持的C函数库是支持浮点类型转换到字符串的,函数是dtostre()。不建议用sprintf(),是因为这个函数主要是为了输出格式化字符串的。不要小看这些格式控制功能,为了能很好地适应各种格式控制情况,函数需要传递并处理大量的格式控制符,这大大地占用了资源,降低了效率,唯一的好处是使用方便。但是单片机不同于台式计算机,资源一向是很紧张的,哪有那么多资源给这个臃肿的函数去浪费?
|