我已经在网上搜索了一段时间...但是我找不到一种方法来要求程序打印超过 6 位十进制数字的数字。我需要更多的小数位来提高精度,因为我试图测量的差异远小于 0.0000004 (小函数需要执行的时间差异)。有没有办法获得更好的精度?
PS:我是编程初学者。
编辑:我应该之前发布它:
我使用一个简单的clock()
安排来获取时间。在这种情况下:
double t;
start = clock();
f();
t = (double)(clock() - start)/CLOCKS_PER_SEC;
printf("t = %lf", t);
但它总是返回 0.000000,因为我可以给 t 的最小值是 0.000001,而函数“f”的运行时间小于该值。
最佳答案
如果您正在寻找精度更高的数据类型,您可以使用 double 并提及您想要打印的位数。
有关数据类型的更多详细信息 - https://www.geeksforgeeks.org/data-types-in-c/
关于c - 如何创建比 float ANSI C 更多小数位的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50997111/