如何使用gettime()获取C中的当前时间?
我们需要使用如何使用gettime()获取C中的当前时间?,c,timestamp,gettime,C,Timestamp,Gettime,我们需要使用gettime()以C语言获取当前时间。我正在尝试打印当前时间,但出现错误: 错误:“t”的存储大小未知 发生。我不知道怎么解决这个问题。代码如下: #include<stdio.h> #include<dos.h> int main(){ struct time t; gettime(&t); printf("%d:%d:%d", t.ti_hour,t.ti_min,t.ti_sec); getch(); r
gettime()
以C语言获取当前时间。我正在尝试打印当前时间,但出现错误:
错误:“t”的存储大小未知
发生。我不知道怎么解决这个问题。代码如下:
#include<stdio.h>
#include<dos.h>
int main(){
struct time t;
gettime(&t);
printf("%d:%d:%d", t.ti_hour,t.ti_min,t.ti_sec);
getch();
return 0;
}
#包括
#包括
int main(){
结构时间t;
gettime&t;
printf(“%d:%d:%d”,t.ti_小时,t.ti_分钟,t.ti_秒);
getch();
返回0;
}
获取本地时间的标准C函数只是时间
,包含在报头时间中。h
例子取自
/*时间示例*/
#包括/*printf*/
#包括/*time\u t、struct tm、difftime、time、mktime*/
int main()
{
时间计时器;
结构tm y2k={0};
双秒;
y2k.tm_小时=0;y2k.tm_分钟=0;y2k.tm_秒=0;
y2k.tm_year=100;y2k.tm_mon=0;y2k.tm_mday=1;
时间(&timer);/*获取当前时间;与:timer=time(NULL)相同*/
秒=difftime(计时器、mktime(&y2k));
printf(“自2000年1月1日起当前时区内的%.f秒”),秒);
返回0;
}
有关不同时间格式的更多信息:
获取本地时间的标准C函数只是
时间
,包含在报头时间中。h
例子取自
/*时间示例*/
#包括/*printf*/
#包括/*time\u t、struct tm、difftime、time、mktime*/
int main()
{
时间计时器;
结构tm y2k={0};
双秒;
y2k.tm_小时=0;y2k.tm_分钟=0;y2k.tm_秒=0;
y2k.tm_year=100;y2k.tm_mon=0;y2k.tm_mday=1;
时间(&timer);/*获取当前时间;与:timer=time(NULL)相同*/
秒=difftime(计时器、mktime(&y2k));
printf(“自2000年1月1日起当前时区内的%.f秒”),秒);
返回0;
}
有关不同时间格式的更多信息:
不清楚您是想获取时间,还是只是打印时间 对于第二种情况,提供格式化时间的传统方法很少(
asctime
,ctime
)。但这些可能不适合你的需要
更灵活的选择是基于time/localtime\r中的数据使用strftime
。strftime支持GNU date提供的许多转义(%Y…)
#include <stdio.h>
#include <time.h>
void main(void)
{
time_t now = time(NULL) ;
struct tm tm_now ;
localtime_r(&now, &tm_now) ;
char buff[100] ;
strftime(buff, sizeof(buff), "%Y-%m-%d, time is %H:%M", &tm_now) ;
printf("Time is '%s'\n", buff) ;
}
#包括
#包括
真空总管(真空)
{
time\u t now=时间(空);
struct tm_现在;
本地时间(现在和现在);
字符buff[100];
strftime(buff,sizeof(buff),%Y-%m-%d,时间为%H:%m“,&tm\u现在);
printf(“时间是“%s”\n”,buff);
}
不清楚您是想获取时间,还是只是打印时间
对于第二种情况,提供格式化时间的传统方法很少(asctime
,ctime
)。但这些可能不适合你的需要
更灵活的选择是基于time/localtime\r中的数据使用strftime
。strftime支持GNU date提供的许多转义(%Y…)
#include <stdio.h>
#include <time.h>
void main(void)
{
time_t now = time(NULL) ;
struct tm tm_now ;
localtime_r(&now, &tm_now) ;
char buff[100] ;
strftime(buff, sizeof(buff), "%Y-%m-%d, time is %H:%M", &tm_now) ;
printf("Time is '%s'\n", buff) ;
}
#包括
#包括
真空总管(真空)
{
time\u t now=时间(空);
struct tm_现在;
本地时间(现在和现在);
字符buff[100];
strftime(buff,sizeof(buff),%Y-%m-%d,时间为%H:%m“,&tm\u现在);
printf(“时间是“%s”\n”,buff);
}
好的,您正在尝试使用DOS.H库,因此时间.H和ctime库不适用于此特定问题,因为DOS.H是一个专用的C库,您不能在任何其他C(C++或C#)中使用它,请在阅读本文后阅读该库,以便您清楚地了解我在说什么,因此,在DOS.H库中有一个用于保存所有时间变量的结构,即小时、分钟、秒,因此我们要做的第一件事是声明一个变量,该变量允许我们保存此类数据:
struct-time-tm强>
完成此操作后,您可以使用库中的gettime()函数将que值保存在可以访问以下内容的位置:
gettime&tm强>
最后,要在任何地方打印o do数据,需要获得结构的每个寄存器:
printf(“系统时间为:%d:%d:%d\n”,tm.ti_小时,tm.ti_分钟,tm.ti_秒)强>
检查此代码:
#include<stdio.h>
#include<dos.h>
#include<conio.h>
int main()
{
struct date fecha;
struct time hora;
union REGS regs;
getdate(&fecha);
printf("La fecha del sistema es: %d / %d / %d\n",fecha.da_day,fecha.da_mon,fecha.da_year);
regs.x.cx = 0x004c;
regs.x.dx = 0x4b40;
regs.h.ah = 0x86; /* 004c4b40h = 5000000 microsegundos */
int86(0x15,®s,®s); /* Interrupcion 15h suspension de sistema */
gettime(&hora);
printf("la hora del sistema es: %d : %d : %d\n",hora.ti_hour,hora.ti_min,hora.ti_sec);
getche();
clrscr();
return 0;
}
#包括
#包括
#包括
int main()
{
结构日期fecha;
结构时间hora;
工会条例;
getdate(&fecha);
printf(“系统周期:%d/%d/%d\n”,周期日,周期日,周期年);
regs.x.cx=0x004c;
regs.x.dx=0x4b40;
regs.h.ah=0x86;/*004c4b40h=5000000微秒*/
int86(0x15,®s,®s);/*系统中断15小时*/
gettime(&hora);
printf(“系统时间:%d:%d:%d\n”,时间:小时,时间:分钟,时间:秒);
getche();
clrsc();
返回0;
}
好的,您正在尝试使用DOS.H库,因此时间.H和ctime库不适用于此特定问题,因为DOS.H是一个专用的C库,您不能在任何其他C(C++或C#)中使用它,请在阅读本文后阅读该库,以便您清楚地了解我在说什么,因此,在DOS.H库中有一个用于保存所有时间变量的结构,即小时、分钟、秒,因此我们要做的第一件事是声明一个变量,该变量允许我们保存此类数据:
struct-time-tm强>
完成此操作后,您可以使用库中的gettime()函数将que值保存在可以访问以下内容的位置:
gettime&tm强>
最后,要在任何地方打印o do数据,需要获得结构的每个寄存器:
printf(“系统时间为:%d:%d:%d\n”,tm.ti_小时,tm.ti_分钟,tm.ti_秒)强>
检查此代码:
#include<stdio.h>
#include<dos.h>
#include<conio.h>
int main()
{
struct date fecha;
struct time hora;
union REGS regs;
getdate(&fecha);
printf("La fecha del sistema es: %d / %d / %d\n",fecha.da_day,fecha.da_mon,fecha.da_year);
regs.x.cx = 0x004c;
regs.x.dx = 0x4b40;
regs.h.ah = 0x86; /* 004c4b40h = 5000000 microsegundos */
int86(0x15,®s,®s); /* Interrupcion 15h suspension de sistema */
gettime(&hora);
printf("la hora del sistema es: %d : %d : %d\n",hora.ti_hour,hora.ti_min,hora.ti_sec);
getche();
clrscr();
return 0;
}
#包括
#包括
#包括
int main()
{
结构日期fecha;
结构时间hora;
工会条例;
getdate(&fecha);
printf(“系统周期:%d/%d/%d\n”,周期日,周期日,周期年);
regs.x.cx=0x004c;
regs.x.dx=0x4b40;
重新