1. C语言求一个程序运行时间
C/C++中的计时函数是clock()。
所以,可以用clock函数来计算的运行一个循环、程序或者处理其它事件到底花了多少时间,具体参考代码如下:
#include“stdio.h”
#include“stdlib.h”
#include“time.h”
intmain(void)
{
longi=10000000L;
clock_tstart,finish;
doubleration;
/*测量一个事件持续的时间*/
printf("Timetodo%ldemptyloopsis",i);
start=clock();
while(i--);
finish=clock();
ration=(double)(finish-start)/CLOCKS_PER_SEC;
printf("%fseconds ",ration);
system("pause");
}
2. 计算C语言程序运行时间(hello world)
现在的计算机速度这么快,1秒钟执行的代码很多很多。
所以你这样求一句代码的执行时间是不太现实的。
你可以
#include "time.h"
#include "stdio.h"
main()
{
double start, finish;
start = clock();//取开始时间
for(int i=0;i<10000;i++)
printf("Hello, World!\n");
finish = clock();//取结束时间
printf( "%f seconds\n",(finish - start) / CLOCKS_PER_SEC);//这里的时间就是10000倍的
}
3. c语言怎么测试一段程序的运行时间
C/C++中的计时函数是clock(),而与其相关的数据类型是clock_t。在MSDN中,查得对clock函数定义如下:
clock_t clock( void );
这个函数返回从“开启这个程序进程”到“程序中调用clock()函数”时之间的CPU时钟计时单元(clock tick)数,在MSDN中称之为挂钟时间(wal-clock)。其中clock_t是用来保存时间的数据类型,在time.h文件中,我们可以找到对它的定义:
#ifndef _CLOCK_T_DEFINED
typedef long clock_t;
#define _CLOCK_T_DEFINED
#endif
很明显,clock_t是一个长整形数。在time.h文件中,还定义了一个常量CLOCKS_PER_SEC,它用来表示一秒钟会有多少个时钟计时单元,其定义如下:
#define CLOCKS_PER_SEC ((clock_t)1000) //CLOCKS_PER_SEC为系统自定义的
可以看到每过千分之一秒(1毫秒),调用clock()函数返回的值就加1。下面举个例子,你可以使用公式clock()/CLOCKS_PER_SEC来计算一个进程自身的运行时间:
void elapsed_time()
{
printf("Elapsed time:%u secs./n",clock()/CLOCKS_PER_SEC);
}
当然,你也可以用clock函数来计算你的机器运行一个循环或者处理其它事件到底花了多少时间:
#include “stdio.h”
#include “stdlib.h”
#include “time.h”
int main( )
{
long i = 10000000L;
clock_t start, finish;
double Total_time;
/* 测量一个事件持续的时间*/
printf( "Time to do %ld empty loops is ", i );
start = clock();
while( i--) ;
finish = clock();
Total_time = (double)(finish-start) / CLOCKS_PER_SEC;
printf( "%f seconds/n", Total_time);
return 0;
}
在笔者的机器上,运行结果如下:
Time to do 10000000 empty loops is 0.03000 seconds
上面我们看到时钟计时单元的长度为1毫秒,那么计时的精度也为1毫秒,那么我们可不可以通过改变CLOCKS_PER_SEC的定义,通过把它定义的大一些,从而使计时精度更高呢?通过尝试,你会发现这样是不行的。在标准C/C++中,最小的计时单位是一毫秒。
4. 怎样用c语言设计计算程序执行的时间
C语言中的头文件time.h中定义了库函数clock(),它返回的是从程序运行开始算起的时间,一时钟周期为单位,time.h还定义了符号:CLOCKS_PER_SEC,即一秒钟的时钟周期。这样就简单了,在头文件中加入#include<time.h>,在程序main()主函数的开头定义long now=0;并给把clock()赋值给now,即now=clock();记录程序开始时的时间,clock()会继续增加,但now已经确定为开始那一时刻clock()的值,在程序结尾,算式clock()-now就是程序执行所需的时间,但是是以时钟周期为单位的,如果想得到以秒为单位的时间只要输出(clock()-now)/CLOCKS_PER_SEC就是了,即在程序结尾添加
printf("%lf",(clock()-now)/CLOCKS_PER_SEC);就可以了。
5. C语言如何 计算程序运行时间
代码运行前获取当前系统时间,代码运行完再获取一次,相减得到时间差就是运行的时间了
6. 怎样计算程序的执行时间(C语言中)
在c语言中有专门处理系统时间,程序计时等等功能的库,
即time.h
在time.h中函数clock_t clock( void )可以完成计时功能。
这个函数返回从“开启这个程序进程”到“程序中调用clock()函数”时之间的CPU时钟计时单元(clock tick)数,在MSDN中称之为挂钟时间(wal-clock)。其中clock_t是用来保存时间的数据类型,在time.h文件中,我们可以找到对它的定义:
#ifndef _CLOCK_T_DEFINED
typedef long clock_t;
#define _CLOCK_T_DEFINED
#endif
很明显,clock_t是一个长整形数。在time.h文件中,还定义了一个常量CLOCKS_PER_SEC,它用来表示一秒钟会有多少个时钟计时单元,其定义如下:
#define CLOCKS_PER_SEC ((clock_t)1000)
可以看到每过千分之一秒(1毫秒),调用clock()函数返回的值就加1。
下面这个程序计算了循环1千万次所用的时间:
#include “stdio.h”
#include “stdlib.h”
#include “time.h”
int main( void )
{
long i = 10000000L;
clock_t start, finish;
double ration;
/* 测量一个事件持续的时间*/
printf( "Time to do %ld empty loops is ", i );
start = clock();
while( i-- ) ;
finish = clock();
ration = (double)(finish - start) / CLOCKS_PER_SEC;
printf( "%f seconds\n", ration );
system("pause");
}
运行结果如下:
Time to do 10000000 empty loops is 0.03000 seconds
参考资料:http://www.zxbc.cn/html/cjjhs/0312542045823.html
7. C语言计算时间
在C语言中计算时间,可以使用标准库中的计时函数——clock()。
函数原型:
clock_tclock(void);
其中clock_t是用来保存时间的数据类型,在time.h文件中,可以找到对它的定义:
#ifndef_CLOCK_T_DEFINED
typedeflongclock_t;
#define_CLOCK_T_DEFINED
#endif
很明显,clock_t是一个长整形数。在time.h文件中,还定义了一个常量CLOCKS_PER_SEC,它用来表示一秒钟会有多少个时钟计时单元,其定义如下:
#defineCLOCKS_PER_SEC((clock_t)1000)
可以看到每过千分之一秒(1毫秒),调用clock()函数返回的值就加1。下面举个例子,可以使用公式clock()/CLOCKS_PER_SEC来计算一个进程自身的运行时间:
voidelapsed_time()
{
printf("Elapsedtime:%usecs. ",clock()/CLOCKS_PER_SEC);
}
当然,也可以用clock函数来计算的机器运行一个循环或者处理其它事件到底花了多少时间:
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
intmain(void)
{
longi=10000000L;
clock_tstart,finish;
doubleration;
printf("Timetodo%ldemptyloopsis",i);
start=clock();
while(i--);
finish=clock();
ration=(double)(finish-start)/CLOCKS_PER_SEC;
printf("%fseconds ",ration);
system("pause");
}
8. C语言怎么计算下面的程序的执行时间
51单片机在晶振12M下,从仿真上来看大概是1ms(仿真的单位是s),具体时间可以用编个程序运行,
while(1)
{
delay();
P1=~P1;
}
然后用示波器观察P1口波形周期
9. C语言如何 计算程序运行时间
先得到程序运行前的时间,
程序运行后,得到运行后的时间,
相减就得到程序运行的时间啦
10. C代码的执行时间怎么算
不是,不同的机子执行的时间不一样,在Windows中有GetTickCount函数可以获取系统启动以来经过的毫秒数,使用该API函数需引入:windows.h头文件。
int start=GetTickCount();
...//待计算时间的程序代码
int end=GetTickCount();
printf("程序运行需耗时:%d 毫秒",end-start);
比如以下程序:
#include <windows.h>
#include <stdio.h>
int main(void)
{
int start=GetTickCount();
int p=0;
for(int i=0;i<100000000;i++)
{
p++;
}
int end=GetTickCount();
printf("程序运行耗时: %d 毫秒",end-start);
system("pause");
return 0;
}
在我的机子上得出:"程序运行耗时:578 毫秒" 的结果