Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
“;时钟();精确度在VS中降低:最后3位始终为零_C_Visual Studio_Time - Fatal编程技术网

“;时钟();精确度在VS中降低:最后3位始终为零

“;时钟();精确度在VS中降低:最后3位始终为零,c,visual-studio,time,C,Visual Studio,Time,当使用在线编译器时,计时器会显示预期的结果(比如0.123456)。VisualStudio中的同一代码总是会丢失结果时间的最后3位数字(因此在本例中为0.123000),因此无法检查更短的时间。不管代码如何检查,问题似乎是一致的。 有办法补救吗?VS确实会告诉我们哪里出了问题(在“结束-开始”部分警告C26451),但我无法确定解决方案 #include<stdio.h> #include<time.h> #include <stdlib.h> int m

当使用在线编译器时,计时器会显示预期的结果(比如0.123456)。VisualStudio中的同一代码总是会丢失结果时间的最后3位数字(因此在本例中为0.123000),因此无法检查更短的时间。不管代码如何检查,问题似乎是一致的。 有办法补救吗?VS确实会告诉我们哪里出了问题(在“结束-开始”部分警告C26451),但我无法确定解决方案

#include<stdio.h>
#include<time.h>
#include <stdlib.h>

int main()
{
    clock_t start = clock();
    //examined code
    clock_t end = clock();
    double seconds = (double)(end - start) / CLOCKS_PER_SEC;
    printf("time = %f s\n", seconds);
}
#包括
#包括
#包括
int main()
{
时钟启动=时钟();
//检查代码
clock_t end=clock();
双倍秒=(双倍)(结束-开始)/每秒时钟;
printf(“时间=%f s\n”,秒);
}

分辨率为1ms,因此无法更精确:)
0.xxx
仅此而已。您可能有适合您的
QueryPerformanceCounter()
。在C18 7.27.1时间组件中,他们说“4可在
时钟
时间
中表示的时间范围和精度由实现定义。”在7.27.2.1中,时钟函数“3
clock
函数返回实现自开始以来程序使用的处理器时间的最佳近似值…”MSVC不符合要求,因为它测量墙壁时间。分辨率是1ms,所以它不能更精确:)
0.xxx
仅此而已。您有可能适合您的
QueryPerformanceCounter()
。在C18 7.27.1时间组件中,他们说“4可在
clock\u t
time\u t
中表示的时间范围和精度由实现定义。”在7.27.2.1中,时钟函数“3
clock
函数返回自程序开始以来所用处理器时间的实现最佳近似值。。。“MSVC不符合要求,因为它测量墙壁时间。