登录 注册
当前位置:主页 > 资源下载 > 49 > 直接转换utime函数数据流图至模块结构图的方法

直接转换utime函数数据流图至模块结构图的方法

  • 更新:2024-11-05 16:11:20
  • 大小:5.82MB
  • 推荐:★★★★★
  • 来源:网友上传分享
  • 类别:Unix - 操作系统
  • 格式:PDF

资源介绍

4.19 utime函数 一个文件的存取和修改时间可以用u t i m e函数更改。 #include #include int utime(const char *p a t h n a m e, const struct utimbuf *t i m e s) ; 返回:若成功则为0,若出错则为-1 此函数所使用的结构是: struct utimbuf { time_t actime; /*access time*/ time_t modtime; /*modification time*/ } 此结构中的两个时间值是日历时间。如 1 . 1 0节中所述,这是自 1 9 7 0年1月1日,0 0 : 0 0 : 0 0以来国 际标准时间所经过的秒数。 此函数的操作以及执行它所要求的优先权取决于 t i m e s参数是否是N U L L。 (1) 如果t i m e s是一个空指针,则存取时间和修改时间两者都设置为当前时间。为了执行此 操作必须满足下列两条件之一: ( a )进程的有效用户 I D必须等于该文件的所有者 I D,( b )进程对 该文件必须具有写许可权。 (2) 如果t i m e s是非空指针,则存取时间和修改时间被设置为 t i m e s所指向的结构中的值。此 时,进程的有效用户I D必须等于该文件的所有者 I D,或者进程必须是一个超级用户进程。对文 件只具有写许可权是不够的。 注意,我们不能对更改状态时间 s t _ c t i m e指定一个值,当调用u t i m e函数时,此字段被自动 更新。 在某些U N I X版本中, t o u c h ( 1 )命令使用此函数。另外,标准归档程序 t a r ( 1 )和c p i o ( 1 )可选 地调用u t i m e ,以便将一个文件的时间值设置为将它归档时的值。 实例 程序4 - 6使用带O _ T R U N C选择项的o p e n函数将文件长度截短为 0,但并不更改其存取时间 及修改时间。为了做到这一点,首先用 s t a t函数得到这些时间,然后截短文件,最后再用 u t i m e 函数重置这两个时间。 程序4-6 utime 函数实例 7 8 U N I X环境高级编程