⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 adjtime.c

📁 它通过提供glibc兼容使得应用程序移植到较小的c 库时相当得容易. 它能够应用到带虚拟存储的Linux和uClinux上.在大多数带MMU部件的平台上为使它更加紧凑,它也能够编译成共享库.uClib
💻 C
字号:
#include <limits.h>#include <sys/time.h>#include <sys/timex.h>#include <errno.h>#define MAX_SEC	(LONG_MAX / 1000000L - 2)#define MIN_SEC	(LONG_MIN / 1000000L + 2)#ifndef MOD_OFFSET#define modes mode#endifintadjtime(const struct timeval * itv, struct timeval * otv){  struct timex tntx;  if (itv)  {    struct timeval tmp;    /* We will do some check here. */    tmp.tv_sec = itv->tv_sec + itv->tv_usec / 1000000L;    tmp.tv_usec = itv->tv_usec % 1000000L;    if (tmp.tv_sec > MAX_SEC || tmp.tv_sec < MIN_SEC)    {	__set_errno(EINVAL);	return -1;    }    tntx.offset = tmp.tv_usec + tmp.tv_sec * 1000000L;    tntx.modes = ADJ_OFFSET_SINGLESHOT;  }  else  {    tntx.modes = 0;  }  if (adjtimex(&tntx) < 0) return -1;  if (otv) {    if (tntx.offset < 0)      {	otv->tv_usec = -(-tntx.offset % 1000000);	otv->tv_sec  = -(-tntx.offset / 1000000);      }    else      {	otv->tv_usec = tntx.offset % 1000000;	otv->tv_sec  = tntx.offset / 1000000;      }  }  return 0;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -