问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

c 语言取得系统时间

发布网友 发布时间:2022-04-22 18:47

我来回答

5个回答

热心网友 时间:2023-11-16 03:29

需要利用C语言的时间函数time和localtime,具体说明如下:

一、函数接口介绍:

1、time函数。

形式为time_t time (time_t *__timer);

其中time_t为time.h定义的结构体,一般为长整型。

这个函数会获取当前时间,并返回。 如果参数__timer非空,会存储相同值到__timer指向的内存中。 

time函数返回的为unix时间戳,即从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒。

由于是秒作为单位的,所以这并不是习惯上的时间,要转为习惯上的年月日时间形式就需要另外一个函数了。

2、localtime函数。

形式为struct tm *localtime (const time_t *__timer);

其中tm为一个结构体,包含了年月日时分秒等信息。

这种结构是适合用来输出的。

二、参考代码:

#include <stdio.h>
#include <time.h>
int main ()
{
    time_t t;
    struct tm * lt;
    time (&t);//获取Unix时间戳。
    lt = localtime (&t);//转为时间结构。
    printf ( "%d/%d/%d %d:%d:%d\n",lt->tm_year+1900, lt->tm_mon, lt->tm_mday, lt->tm_hour, lt->tm_min, lt->tm_sec);//输出结果
    return 0;
}

注意事项:

struct tm中的tm_year 值为实际年减去1900, 所以输出的时候要是lt->tm_year+1900。

热心网友 时间:2023-11-16 03:29

这是一个获取时间的,并且写入文件的函数。你琢磨下吧。
void
time()
{
file
*tp;
tp=fopen("系统使用记录.txt","a");
time_t
t;
//struct
tm
*gmt,
*area;
struct
tm
*area;
t
=
time(null);
area
=
localtime(&t);
printf("当前系统时间:
%s",
asctime(area));
fprintf(tp,"
%s",asctime(area));
fclose(tp);
//gmt
=
gmtime(&t);
//printf("gmt
is:
%s",
asctime(gmt));
}

热心网友 时间:2023-11-16 03:30

一般使用函数"
text="点击实体词"
target="_blank"
href="http://www.haosou.com/s?q=time%E5%87%BD%E6%95%B0&ie=utf-8&src=wenda_link">time函数,Windows下可以使用GetTickCount或timeGetTime函数获取系统时间。

热心网友 时间:2023-11-16 03:30

Example

/* TIMES.C illustrates various time and date functions including:
* time _ftime ctime asctime
* localtime gmtime mktime _tzset
* _strtime _strdate strftime
*
* Also the global variable:
* _tzname
*/

#include <time.h>
#include <stdio.h>
#include <sys/types.h>
#include <sys/timeb.h>
#include <string.h>

void main()
{
char tmpbuf[128], ampm[] = "AM";
time_t ltime;
struct _timeb tstruct;
struct tm *today, *gmt, xmas = { 0, 0, 12, 25, 11, 93 };

/* Set time zone from TZ environment variable. If TZ is not set,
* the operating system is queried to obtain the default value
* for the variable.
*/
_tzset();

/* Display operating system-style date and time. */
_strtime( tmpbuf );
printf( "OS time:\t\t\t\t%s\n", tmpbuf );
_strdate( tmpbuf );
printf( "OS date:\t\t\t\t%s\n", tmpbuf );

/* Get UNIX-style time and display as number and string. */
time( <ime );
printf( "Time in seconds since UTC 1/1/70:\t%ld\n", ltime );
printf( "UNIX time and date:\t\t\t%s", ctime( <ime ) );

/* Display UTC. */
gmt = gmtime( <ime );
printf( "Coordinated universal time:\t\t%s", asctime( gmt ) );

/* Convert to time structure and adjust for PM if necessary. */
today = localtime( <ime );
if( today->tm_hour > 12 )
{
strcpy( ampm, "PM" );
today->tm_hour -= 12;
}
if( today->tm_hour == 0 ) /* Adjust if midnight hour. */
today->tm_hour = 12;

/* Note how pointer addition is used to skip the first 11
* characters and printf is used to trim off terminating
* characters.
*/
printf( "12-hour time:\t\t\t\t%.8s %s\n",
asctime( today ) + 11, ampm );

/* Print additional time information. */
_ftime( &tstruct );
printf( "Plus milliseconds:\t\t\t%u\n", tstruct.millitm );
printf( "Zone difference in seconds from UTC:\t%u\n",
tstruct.timezone );
printf( "Time zone name:\t\t\t\t%s\n", _tzname[0] );
printf( "Daylight savings:\t\t\t%s\n",
tstruct.dstflag ? "YES" : "NO" );

/* Make time for noon on Christmas, 1993. */
if( mktime( &xmas ) != (time_t)-1 )
printf( "Christmas\t\t\t\t%s\n", asctime( &xmas ) );

/* Use time structure to build a customized time string. */
today = localtime( <ime );

/* Use strftime to build a customized time string. */
strftime( tmpbuf, 128,
"Today is %A, day %d of %B in the year %Y.\n", today );
printf( tmpbuf );
}

Output

OS time: 21:51:03
OS date: 05/03/94
Time in seconds since UTC 1/1/70: 768027063
UNIX time and date: Tue May 03 21:51:03 1994
Coordinated universal time: Wed May 04 04:51:03 1994
12-hour time: 09:51:03 PM
Plus milliseconds: 279
Zone difference in seconds from UTC: 480
Time zone name:
Daylight savings: YES
Christmas Sat Dec 25 12:00:00 1993

Today is Tuesday, day 03 of May in the year 1994.

热心网友 时间:2023-11-16 03:31

lt->tm_year+1900, lt->tm_mon+1
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
太平盛世专辑曲目 梦见自家灶台缺个角 如何看待宝马3系? - 知乎 为什么缺爱的女人婚姻难幸福快乐 求一些好看的架空言情小说,最好是以第一人称为视角的。小白文请绕。 带双目相机的无人机有哪些 禄莱1982年后 工业3d相机国内有哪些靠谱的厂商,特别是在阳光和弱光环境 海康全新双目单线相机 | 消盲区、抑杂光,引领3D检测新突破 10米范围内实现零盲区大FoV深度测量,奥比中光发布Gemini 2双目... c++ 如何获取系统时间?? 怎么用C语言来获得系统时间 最好看的历史题材言情小说有哪些 C语言如何调用系统时间 C语言获取系统时间的几种方式 ! C语言获取系统时间 手机上有什么软件可以设置分辨率,求解! 山东工商学院会计学硕分数线 山东工商学院二本分数线多少??? 鼠年缺木男宝宝取名吴梓昊可以吗? 404 Not Found 山东工商学院贵校往年录取情况? 安徽高二本线10分能录取吗 山东工商学院历年分数线 山东工商学院专科分数线 山东工商学院有专科专业吗 山东工商学院专科往年的分数线 请教养花高手,牡丹花的养植知识 山东工商学院山东历年录取分数线(理科) 烟台有哪些大学 关于历史人物的言情小说 C语言中调用系统时间 真实历史言情小说 c语言调用系统时间 高分求关于历史穿越的言情小说 【求有关历史人物的言情小说】 有什么经典的古代古代言情小说 在C语言环境下怎么获取系统当前时间然后返回值啊? 推荐有历史依据的清朝爱情小说! 推荐一本好看的历史言情小说吧 经典的古代言情小说 推介一些经典的古代言情小说 推荐经典古代言情小说!!! 15寸Retina MacBook Pro运行速度有多快 关于15寸retina显示屏的MacBook pro的配置选择 13寸和15寸的MacBook Pro retina屏幕色域一样吗 15寸macbook pro retina和13寸air哪个好 苹果笔记本视网膜屏有必要吗 15寸MacBook Pro 怎么样 15寸MacBook Pro Retina如何调节分辨率才能真正用上Retina?