注册 登录
编程论坛 VC++/MFC

c++ 如何获取系统时间

发布于 2010-12-22 00:15, 954 次点击
方案— 优点:仅使用C标准库;缺点:只能精确到秒级
#include <time.h>
#include <stdio.h>
int main( void )
{
time_t t = time(0);
char tmp[64];
strftime( tmp, sizeof(tmp), "%Y/%m/%d %X %A 本年第%j天 %z",localtime(&t) );
puts( tmp );
return 0;
}
size_t strftime(char *strDest, size_t maxsize, const char *format, const struct tm *timeptr);
根据格式字符串生成字
这个时间怎么导入
class Product{
      public:
             string pname;
             double price;
             string deadline;
             string pno,other;
};
中的deadline
希望各位帅哥美女们最好给个可以用的函数
4 回复
#2
lucky5635912010-12-22 07:53
我的VC好像没有ctime这个库
#3
2010-12-22 12:59
额。。。
#4
wangting1212010-12-22 18:14
在状态栏右下角显示当前计算机的时间。
在资源中,String Table 中添加 new string   ID为ID_INDICATOR_CLOCK ,
名称为   时间。。。。【注意,起名称长度就是程序运行后,显示时间可以占用的长度】
在MainFrm.cpp中indicators声明处添加ID_INDICATOR_CLOCK,代码如下:  
  static UINT indicators[] =
  {
  ID_SEPARATOR,  
  ID_INDICATOR_CLOCK,
  ID_INDICATOR_CAPS,
  ID_INDICATOR_NUM,
  ID_INDICATOR_SCRL,
  };
  这一步中ID_INDICATOR_CLOCK的插入位置将影响时间窗格在状态栏中的显示位置。
  3)安装定时器:在MainFrm.cpp中OnCreate函数处添加代码如下:
  int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
  { ……
  SetTimer(1,1000,NULL);//安装定时器,并将其时间间隔设为1000毫秒
  return 0;
  }
  4)编写时间处理函数:利用ClassWizard为CMainFrame类加入WM_TIMER的消
  息处理函数OnTimer,并添加代码如下:
  void CMainFrame::OnTimer(UINT nIDEvent)  
  {// TODO: Add your message handler code here and/or call default
  CTime time;
  time=CTime::GetCurrentTime();//得到当前时间
  CString s=time.Format(“%H:%M:%S”);//转换时间格式
  m_wndStatusBar.SetPaneText(m_(ID_INDICATOR_CLOCK),s); //显示时钟
  CFrameWnd::OnTimer(nIDEvent);}
  5)销毁定时器:利用ClassWizard为CMainFrame类加入WM_CLOSE的消息处理
  函数OnClose,并添加代码如下:
  void CMainFrame::OnClose()  
  {// TODO: Add your message handler code here and/or call default
  KillTimer(1);//销毁定时器
  CFrameWnd::OnClose();}
#5
2010-12-23 17:12
回复 4楼 wangting121
谢拉 虽然已经解决了 呵呵
1