基于 C 语言的服务 setlocale 函数的扩展 fdopen 非局部跳转 设置时间域 参考的 C 语言规范 C 语言输入/输出函数 其他文件类型函数之间的相互作用 其他的 C 函数

参考的 C 语言规范

    setlocale 函数的扩展

#include <locale.h>

//根据参数 category 和 locale 设置,更改或者查询进程现场
char *setlocale(int category, const char *locale);

 C 语言输入/输出函数

     根据一个文件描述符打开一个流

#include <stdio.h>

//联合一个流和一个文件描述符
FILE *fdopen(int fildes, const char *type);

    其他文件类型函数之间的相互作用

        一个单一的文件描述 可以通过 流 和 文件描述符 访问

       流 或是 文件描述符 被称作 打开文件的句柄

       一个打开文件可以有多个句柄

      句柄可以在不影响重要的打开文件说明的情况下被创建和删除

        创建如 fcntl().dup(),fdopen(),fileno(),fork()

        删除如 fclose(),close()

     fopen() 随着 open() 的调用分配描述符,基础函数为open()

     fclose() :

         该函数完成在与 FILE 流相关的,对文件描述符的 close() 功能

     freopen():

           具有 fclose()和 fopen()的特点

     fflush():

          如 流 可写 或 缓存数据还没有写入文件 时,该函数标记下 基础文件 st_ctime 和 st_mtime 的值

    fgetc(), fgets(), fread(), getc(), getchar(), gets(), scanf(), fscanf():

          这些函数标记更新的 st_atime 值, 基础函数是 read() 和 lseek()

      fputc(),fputs(),fwrite(),putc(),putchar(),puts(),printf(),fprintf():

             从以上任一个函数的成功执行到下一个调用(在同一个流中的 fflush()或 fclose() 或 exit()或 abort() ),记下更新的 st_ctime 和 st_mtime 值。基础函数是 write()和lseek()
     fseek(), rewind():

         如 流 可写 或者 缓存数据还没有写入文件 时,该函数标记下文件更新的st_ctime 和 st_mtime 值。基础函数是lseek() 和 write()

    perror():

         记下与标准错误流相关的文件

   tmpfile():

           fopen() 执行后为 文件分配文件描述符

   ftell():

       执行 fflush() 后 执行该函数的结果与 执行 fflush() 前 执行该函数的结果相同, 基础文件是 lseek() 

   exit(), abort():

         exit() 终止进程的时候要关闭流,abort() 只终止进程对流没有影响

    文件操作-----remove()函数

       该函数和 unlink()函数的功能一样

其他的 C 函数

     非局部跳转

#include <setjmp.h>

// sigsetjmp()宏要与标准中 setjmp()宏的定义一致
//如 savemask != 0,sigsetjmp()就要保存当前的信号 标记为 调用环境的一部分
// Siglongjmp()同理
int sigsetjmp(sigjmp_buf env, int savemask);
void siglongjmp(sigjmp_buf env, int val);

   设置时间域

#include <time.h>

//用环境变量 TZ 的值来设定时间变化信息
void tzset(void);

猜你喜欢

转载自blog.csdn.net/qq_44226094/article/details/105289672