当前位置:  技术问答>linux和unix

用C语言编程如何得到linux系统的时间

    来源: 互联网  发布时间:2015-07-05

    本文导语:  我用C语言在linux下编程,主要实现获得系统的时间,并可以对系统时间进行修改。不知道如何实现,请各位仁兄指教!!非常感谢! | 有函数: #include time_t time(time_t *calptr);  使用这个函数...

我用C语言在linux下编程,主要实现获得系统的时间,并可以对系统时间进行修改。不知道如何实现,请各位仁兄指教!!非常感谢!

|
有函数:
#include
time_t time(time_t *calptr);
 使用这个函数,可以得到当前的时间
但是要输出,则需要使用
struct tm *localtime(const time_t *calptr);
函数将其转换为struct结构体类型。
struct tm
{
  int tm_sec;
  int tm_min;
  int tm_hour;
  int tm_mday;
  int tm_mon;
  int tm_year;
  int tm_wday;
  int tm_yday;
  等
}
接下来该怎么做,不用我说了吧

|
给个例子,以供参考:
unsigned char SetSysTime(struct NetData *net_data)
{
unsigned char h_year,l_year,month,day,hour,minute,second;
struct timeval tv;
struct timezone tz;
struct tm *p;
time_t timep,timeq;
int ret;

ret = IsTime(net_data->Data);
if (ret == FALSE)
{
printf("The net time data error.n");
return DATAERROR;
}

memcpy(&h_year,net_data->Data,1);
memcpy(&l_year,(net_data->Data+1),1);
memcpy(&month,(net_data->Data+2),1);
memcpy(&day,(net_data->Data+3),1);
memcpy(&hour,(net_data->Data+4),1);
memcpy(&minute,(net_data->Data+5),1);
memcpy(&second,(net_data->Data+6),1);

ret = gettimeofday(&tv,&tz);
if (ret == -1)
{
printf("Gettimeofday error:%sn",strerror(errno));
return DOFAILE;
}

ret = time(&timep);
if (ret == (time_t)-1)
{
printf("Time error:%sn",strerror(errno));
return DOFAILE;
}

    /*get local current time and date*/
p = localtime(&timep);

p = (struct tm *)alloca(sizeof(struct tm));
p->tm_year = (h_year*256 + l_year) - 1900;
p->tm_mon = month - 1;
p->tm_mday = day;
p->tm_hour = hour;
p->tm_min = minute;
p->tm_sec = second;

timeq = mktime(p);
tv.tv_sec = (long)timeq;

ret = settimeofday(&tv,&tz);
if (ret == -1)
{
printf("Settimeofday error:%sn",strerror(errno));
return DOFAILE;
}

     return DOOK;
}

    
 
 

您可能感兴趣的文章:

  • 请问,C语言socket编程中,客户端如何得到自己的IP?不要0.0.0.0
  • 2013年7月和2013年8月编程语言排行榜
  • kliyx是使用C++语言编程的,还是用C语言编程的?
  • 2017 年热门编程语言排行榜出炉,你的语言上榜没?
  • 动态编程语言 LIME编程语言
  • 苹果OS X和IOS下最新编程语言swift介绍
  • 有了c语言基础,如何入手学习用c语言linux网络编程
  • PHP编程语言介绍及安装测试方法
  • LINUX下 C语言编程中 DIR 是做什么用的~?
  • 编程语言可扩展框架 LayerD
  • 新建 一 LINUX C语言编程交流群 大家若有兴趣就加入一起交流哈
  • unix/linux系统,支持那些语言编程??
  • 如何用C语言编程启动linux下的shell命令
  • 各位大侠,请推荐几本在UNIX环境下使用标准C语言编程的好书.谢谢啊!!!
  • 请问:linux 下 C语言编程 , 如何将 串口 由 全双工 变化为 半双工 通讯 方式?
  • 脚本编程语言 Crack
  • 基于JVM的编程语言 Golo
  • 一个小问题。Linux下编程语言的问题。
  • 在unix 中怎么实现 c 语言编程
  • 初学Linux要看什么书?, 请问Linux下C语言编程怎么设置环境?
  • 请问在linux中,怎样用c语言编程来实现对计算机的日期和时间的修改啊?
  • 在Linux的Eclipse中用C语言编程,求助
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 为什么要学linux环境下c语言编程
  • 请各位推荐几本UNIX下C语言编程学习的书!!(电子书籍也可)最好能详细介绍文件操作的!!!万分感谢!!!
  • 请教高手:在linux下c语言编程如何清空目标文件的内容?
  • Linux下的C语言编程
  • linux下的c语言编程问题
  • 请问:linux和windows下C语言编程有什么不同?(100分相送)
  • 请问哪里有<<精通Unix下C语言编程与项目实践>>电子书和原代码下载
  • Linux下C语言编程可以调用C++类库吗?
  • linux下C语言编程问题(curses库)
  • 在linux下用c语言编程遇到的一个问题,请高人指教:)
  • 关于linux下,C语言编程!!简单问题!
  • 问一个新手问题:在linux下的c语言编程跟windows下有什么不同?
  • 关于linux下c语言编程的问题
  • 菜鸟提问:关于linux(unix)c语言编程问题?
  • 【新手请教】关于linux下c语言编程
  • c语言编程问题:如果防止linux下程序的重复运行?
  • 调查:大家都用哪个Java语言编程?
  • 在SCO OpenSever中用C语言编程的问题!!!
  • UNIX下的编程语言有那些?
  • 并发编程语言 JR


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3