永发信息网

C语言 计时函数时间差总为零

答案:3  悬赏:40  手机版
解决时间 2021-01-25 19:17
#include
#include
void leave_car();
int main()
{
time_t t_start,t_end;
t_start=time(NULL);
leave_car();
return 0;
}
void leave_car()
{
int i,j;
time_t t_start,t_end;
printf("yse:");
scanf("%d",&i);
printf("%d\n",i);
t_end=time(NULL);
printf("time is %f s\n",difftime(t_end,t_start);
printf("yes:");
scanf("%d",&j);
printf("%d",j);
}
这是我写的简易情况,需要计时函数可以分成两个部分,一部分在主函数,一部分在分函数。但运行时时间总是为零,求解!!!
最佳答案
把 time_t t_start,t_end; 改为全局量。去掉 2个函数里的声明time_t t_start,t_end;

#include
#include
time_t t_start,t_end; //global
void leave_car();

int main(){
t_start=time(NULL); // 开始时间
leave_car();
return 0;
}

void leave_car(){
int i,j;
//time_t t_start,t_end;
printf("yse:");
scanf("%d",&i);
printf("%d\n",i);
t_end=time(NULL); //结束时间
printf("time is %f s\n", difftime(t_end,t_start) ); // 加上小括号
printf("yes:");
scanf("%d",&j);
printf("%d",j);
}
全部回答
迎接柔和的光辉。厅丌有的
C语言中变量是有作用域的,除非定义了全局变量,一般而言不同的函数体中的变量相互不可见。 因此,主函数中的t_start与leave_car()函数中的t_start并不是同一个变量! 修改如下: 1. 将主函数中的 time_t t_start,t_end; t_start=time(NULL); 两个语句去掉,因为对整个程序而言没有实际的作用。 2. 在leave_car()中 printf("yes"); 前添加 t_start=time(NULL); 3. 另外 printf("time is %f s\n",difftime(t_end,t_start); 少写了一个反括号
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
吴亦凡主演的《夏有乔木》里面的主题曲是吴亦
18(2009?通州区模拟)正确的实验操作是确保
男朋友说 第一次见他什么感觉 要怎么说点好听
为什么变的越来越不开心
小鳄龟什么品种好
南京理工大学硕士研究生招生分数线为什么比较
叔叔违章21分,他说昨天已经扣了12分,要向我
眉毛越来越稀疏怎么办
长葛市许昌董村中心小学这个地址怎么能查询到
闪电中不会生成的物质
新买的联想笔记本V480S如何锁定触摸板,FN+F6
天品茗茶名酒怎么去啊,我要去那办事
去比利时国家打工
安徽省淮南市凤台县花家湖的邮政编码是多少
关于姓名叫张雪醒酒藏头诗
推荐资讯
椭圆上动点到直线的最短距离椭圆方程X2/9+Y2/
粉红色羽绒服(如图),普通的黑色打底裤,配
【有创意的广告词】...你能帮助他们策划一个
2016年仓库管理员要证件么
【科索沃战争的启示】下列有关科索沃战争的说
请教一个水力学问题。问题是这样的,在河道上
我连续两天做梦梦到蛇了,谁能告诉我怎么回事
417÷3=925÷5=332÷4264÷6=多少答案
未来钢琴地址有知道的么?有点事想过去
"搜"组成的词( 不可重复 )
电脑换个主板,机箱需要换吗
百色市通铁路(或正在建设中)的县区个数为AA
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?