我知道strtol和strtof比atoi/atof更好,因为前者可以检测错误,而且strtol在处理非base-10时比atoi灵活得多。但我仍然对一些东西感到好奇: OS X上的“man atoi”(或atof) (尽管不是在Linux上!)提到atoi/atof不是threadsafe。如果是这样的话,为什么图书馆不直接用strtol来定义atoi,这样就是安全的?
这是来自理查德·史蒂文斯的高级Linux编程。__strtol_internal (nptr=0x0, endptr=0x0, base=10, group=0)287 strtol.c: No such file() from /lib/x86_64-linux-gnu/libc.so.6
可能会发生不同的事情。这是版本问题还是其他问题?
我做了这样的事: * using library function: strtol() to do it */key = strtol(argv[1], flag, 10);
// if argv[1] is not all digits在C文档中,strtol被原型为long int strtol(const
这是一个Linux嵌入式系统,CPU和内存都处于优势地位。性能是重要的,准确性不那么重要。这应该能够完成多个摄取每秒。我最终将把它变成一个守护进程,并将最新的1024个值存储在一个数组中。我刚刚(糟糕地)重新实现了strtol吗?我应该继续使用strtol吗?如果是的话,我应该检查的任何东西,strtol还没有呢?编辑:我在for循环中删除了print语句,并将读取从stdin包装到了atoi/strtol中。
# time seq