gpt4 book ai didi

c - 长被截断的除法 - C

转载 作者:太空宇宙 更新时间:2023-11-04 06:02:53 25 4
gpt4 key购买 nike

<分区>

我正在尝试使用 gettimeofday() 函数为函数计时。我能够获取以微秒为单位的时间,但是当试图将它除以 long 以获取以秒为单位的时间时,我的值被截断为单个 integer。有没有人对为什么会这样有任何见解?我原以为除以 long = 1000000.0 会阻止这种截断。

函数时间:

struct timeval t1,t2;

gettimeofday(&t1, NULL);

// Computes C - C1 - using single thread
for (i=0; i < n; i++)
for (j=0; j < p; j++)
{
C1[i][j]=0;
for (k=0; k < m; k++)
C1[i][j] += A[i][k]*B[k][j];
}

gettimeofday(&t2, NULL);

此处应用的除法:

long divider = 1000000.0;
long elapsed = ((t2.tv_sec - t1.tv_sec) * 1000000.0L) + (t2.tv_usec - t1.tv_usec);
elapsed = (elapsed/divider);

printf("Time in seconds: %ld seconds\n", elapsed);

感谢任何帮助。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com