主要分为两种方法:
1这种方法比较高级
#include <timeh>#include <stdioh>
#include <timeh>
int main(int argc, char argv)
{
time_t temp;
struct tm t;
time(&temp);
t = localtime(&temp);
printf("当前时间是:\n%d年%d月%d日\n", t->tm_year+1900, t->tm_mon+1 , t->tm_mday);
printf("%d时%d分%d秒\n", t->tm_hour, t->tm_min, t->tm_sec);
/
t结构体内的成员变量还有以下几个:
tm_wday 星期的第几天 tm_yday 这天是这年的第几天
/
return 0;
}
需要注意的是tm_year返回的是1900年之后的年数,tm_mon返回的比实际月份小1(至于为什么要这样设计,我不是太清楚)
2这种方法较为简单方便,但是同时可能会对接下来的其它 *** 作不利。
#include <timeh>#include <stdioh>
int main(int argc, char argv)
{
time_t temp;
time(&temp);
printf("当前时间为:\n%s", ctime(&temp));
return 0;
}
编一个输出时间的函数,输出时调用一下。例如:
#include<stdioh>
#include<timeh>
char t(){
time_t now = time (NULL);
return ctime(&now);
}
main(){
int i,j,k,m;
for (m=0;m<3;m++)
{
for (j=0;j<5000;j++)
for (i=0;i<5000;i++){
k++; k = k % 123;
}
printf("%sk=%d\n", t(), k); // 调用 t() 输出时间。
}
return 0;
}
===========
当然 你也可以编写一个
void t(){
time_t seconds;
struct tm timeinfo;
seconds = time (NULL);
timeinfo = localtime ( &seconds );
printf("%d-%d-%d: ",timeinfo->tm_hour,timeinfo->tm_min, timeinfo->tm_sec);
}
就打印 时分秒。
调用:
t(); printf("%d\n", k);
可以使用头文件timeh
下面我举一个例子:
/不能直接复制!/#include <stdioh>
#include <timeh>
int main()
{
time_t t; //time_t是一种类型,定义time_t类型的t
time(&t); //取得当前时间
printf("%s\n",ctime(&t));// ctime(&t)将日期转为字符串并打印
return 0;
}
这是最简单的获取时间的方法。
标准库的timeh里有时间函数
time_t time (time_t timer)
计算从1970年1月1日到当前系统时间,并把结果返回给timer变量,
函数本身返回的也是这个结果time_t这个类型其实就是一个int
另有:
double difftime ( time_t timer2, time_t timer1 )
把返回time2和time1所储存的时间的差
以上就是关于c语言中取系统时间全部的内容,包括:c语言中取系统时间、C语言,如何实现在每条printf之前输出当前时间、C语言怎样打印出当前的时间等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)