VC中 time.h中不含 gettime函数么? 如何定义gettime函数 来取得系统时间
8个回答
展开全部
你不是在TC下跑的吧,dos.h是TC/BC之类的古老的C的专用函数……
--------------
VC的dos.h是阉割了的,没有gettime了,你要用就用time.h的time函数吧,是一样的。
----------------
你看看这个你看得懂么?
#include <time.h> //time,ctime
#include <stdio.h>
#include <windows.h> //system
void main()
{
long i,t;
for (i=0L;i<10000000L;i++)
{
system("cls"); //在VC里没有clrscr函数,只能直接用dos命令清屏
t = time(NULL);
printf("%d:%d:%d\n",((t/3600)+8)%24,(t/60)%60,t%60);//小时+8因为东八区
printf(ctime(&t)); //时间的标准输出方式
}
}
--------------
VC的dos.h是阉割了的,没有gettime了,你要用就用time.h的time函数吧,是一样的。
----------------
你看看这个你看得懂么?
#include <time.h> //time,ctime
#include <stdio.h>
#include <windows.h> //system
void main()
{
long i,t;
for (i=0L;i<10000000L;i++)
{
system("cls"); //在VC里没有clrscr函数,只能直接用dos命令清屏
t = time(NULL);
printf("%d:%d:%d\n",((t/3600)+8)%24,(t/60)%60,t%60);//小时+8因为东八区
printf(ctime(&t)); //时间的标准输出方式
}
}
展开全部
#include<time.h>
#include<stdio.h>
#include<dos.h>
int main()
{
time_t timer;
struct tm *tblock;
timer = time(NULL);//获取当前时间
tblock = localtime(&timer);//将时间(数字)格式化为结构体,可以具体获得年月日时分秒
printf("Local time is: %s", asctime(tblock));//asctime将时间格式化为字符串
return 0;
}
time(NULL);//获取当前时间
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#inlcude <time.h>头文件里的一个time()函数和localtime()函数
#include "stdafx.h"
#include <time.h>
#include <stdio.h>
#include <wtypes.h>
int main(int argc, char* argv[])
{
time_t t;
tm *tp;
t=time(NULL);
// 既然time_t实际上是长整型,到未来的某一天,从一个时间点(一般是1970年1月1日0时0分0秒)
// 到那时的秒数(即日历时间)超出了长整形所能表示的数的范围怎么办?对time_t数据类型的值来说,
// 它所表示的时间不能晚于2038年1月18日19时14分07秒。为了能够表示更久远的时间,一些编译器厂商
// 引入了64位甚至更长的整形数来保存日历时间。比如微软在Visual C++中采用了__time64_t数据类型来
// 保存日历时间,并通过_time64()函数来获得日历时间(而不是通过使用32位字的time()函数),这样
// 就可以通过该数据类型保存3001年1月1日0时0分0秒(不包括该时间点)之前的时间。
tp=localtime(&t);
printf("%d/%d/%d\n",tp->tm_mon+1,tp->tm_mday,tp->tm_year+1900);
printf("%d:%d:%d\n",tp->tm_hour,tp->tm_min,tp->tm_sec);
SYSTEMTIME stCurTime = {0};
::GetLocalTime(&stCurTime);
// 注意区分GetSystemTime(&stCurTime);的区别
printf("%d/%d/%d\n",stCurTime.wMonth,stCurTime.wDay,stCurTime.wYear);
printf("%d:%d:%d\n",stCurTime.wHour,stCurTime.wMinute,stCurTime.wSecond);
getchar();
return 0;
}
其实如果要是支持 afx.h
CString strTime;
CTime tTime = CTime::GetCurrentTime();
strTime = tTime.Format("%Y-%m-%d %H:%M:%S");
#include "stdafx.h"
#include <time.h>
#include <stdio.h>
#include <wtypes.h>
int main(int argc, char* argv[])
{
time_t t;
tm *tp;
t=time(NULL);
// 既然time_t实际上是长整型,到未来的某一天,从一个时间点(一般是1970年1月1日0时0分0秒)
// 到那时的秒数(即日历时间)超出了长整形所能表示的数的范围怎么办?对time_t数据类型的值来说,
// 它所表示的时间不能晚于2038年1月18日19时14分07秒。为了能够表示更久远的时间,一些编译器厂商
// 引入了64位甚至更长的整形数来保存日历时间。比如微软在Visual C++中采用了__time64_t数据类型来
// 保存日历时间,并通过_time64()函数来获得日历时间(而不是通过使用32位字的time()函数),这样
// 就可以通过该数据类型保存3001年1月1日0时0分0秒(不包括该时间点)之前的时间。
tp=localtime(&t);
printf("%d/%d/%d\n",tp->tm_mon+1,tp->tm_mday,tp->tm_year+1900);
printf("%d:%d:%d\n",tp->tm_hour,tp->tm_min,tp->tm_sec);
SYSTEMTIME stCurTime = {0};
::GetLocalTime(&stCurTime);
// 注意区分GetSystemTime(&stCurTime);的区别
printf("%d/%d/%d\n",stCurTime.wMonth,stCurTime.wDay,stCurTime.wYear);
printf("%d:%d:%d\n",stCurTime.wHour,stCurTime.wMinute,stCurTime.wSecond);
getchar();
return 0;
}
其实如果要是支持 afx.h
CString strTime;
CTime tTime = CTime::GetCurrentTime();
strTime = tTime.Format("%Y-%m-%d %H:%M:%S");
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是的,。获取当前时间应该是time(),具体例子如下:
#include <time.h>
void main()
{
time_t t;
struct tm *pt ;
char *pc ;
time(&t);
pc=ctime(&t) ; printf("ctime:%s", pc );
pt=localtime(&t) ; printf("year=%d", pt->tm_year+1900 );
}
#include <time.h>
void main()
{
time_t t;
struct tm *pt ;
char *pc ;
time(&t);
pc=ctime(&t) ; printf("ctime:%s", pc );
pt=localtime(&t) ; printf("year=%d", pt->tm_year+1900 );
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2017-08-15
展开全部
获取时间应该用localtime函数,先定义一个time_t 类型的变量
time_t curtime = time(NULL);
tm *ptm = localtime(&curtime);
time_t curtime = time(NULL);
tm *ptm = localtime(&curtime);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询