搜索
查看: 1791|回复: 2
打印 上一主题 下一主题

时钟

[复制链接]
跳转到指定楼层
楼主
发表于 2012-10-1 02:11:45 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
#include <stdio.h>
#include <time.h>
int main()
{
    while(1)
    {
time_t timep;
    struct tm *p;
    time(&timep);
    p=localtime(&timep);
    printf("北京时间 %d年%d月%d日",(1900+p->tm_year),(1+p->tm_mon),p->tm_mday);
    printf("%d:%d:%d",p->tm_hour,p->tm_min,p->tm_sec);
    sleep(1000);
system("cls");
    }
}

未命名.jpg (18.44 KB, 下载次数: 24)

未命名.jpg
沙发
发表于 2012-10-1 03:29:10 | 只看该作者
顶哈    
板凳
发表于 2014-10-6 11:01:05 | 只看该作者
localtime返回一个指针,一个线程中只有一个localtime的对象,但是想要更新localtime的数据还是要time() localtime()走一遍

为了兼容性标准库这部分真是丑陋不堪……

另外有个函数叫asctime可以直接转换成字符串,如果不介意用英文

  1. #include <stdio.h>
  2. #include <time.h>
  3. #include <windows.h>

  4. int main()
  5. {
  6.         time_t epoch;
  7.         struct tm* local;

  8.         while(1){
  9.                 system("cls");
  10.                 time(&epoch);
  11.                 local = localtime(&epoch);
  12.                 puts(asctime(local));
  13.                 Sleep(1000);
  14.         }

  15.         return 0;
  16. }
复制代码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表