c语言中的creat()函数使用及参数详解

头文件:#include <sys/types.h>   #include <sys/stat.h>   #include <fcntl.h>

  1. #include <fcntl.h>                          // 提供open()函数  
  2. #include <sys/types.h>                      // 提供mode_t类型  
  3. #include <sys/stat.h>                       // 提供open()函数的符号  
  4. #include <unistd.h>                         // 提供close()函数

定义函数:int creat(const char * pathname, mode_tmode);

函数说明:
1、参数 pathname 指向欲建立的文件路径字符串。
2、Creat()相当于使用下列的调用方式调用open()
    open(const char * pathname, (O_CREAT|O_WRONLY|O_TRUNC));
  

     filename:要创建的文件名(包括路径,默认当前路径)

     mode:创建模式(0表示没有任何权限

     S_IRUSR可读,1

     S_IWUSR可写,2

     S_IXUSR可执行,4

    S_IRWXR可读、写、执行)7(也可以用数字代替,如0777)

返回值:文件描述符,值为一个整数,发生错误时返回-1

返回值:
creat()会返回新的文件描述词, 若有错误发生则会返回-1, 并把错误代码设给errno.

错误提示:
EEXIST参数:pathname 所指的文件已存在.
EACCESS参数:pathname 所指定的文件不符合所要求测试的权限
EROFS:欲打开写入权限的文件存在于只读文件系统内
EFAULT参数:pathname 指针超出可存取的内存空间
EINVAL参数:mode 不正确.
ENAMETOOLONG参数:pathname 太长.
ENOTDIR 参数:pathname 为一目录
ENOMEM :核心内存不足
ELOOP 参数:pathname 有过多符号连接问题.
EMFILE:已达到进程可同时打开的文件数上限
ENFILE:已达到系统可同时打开的文件数上限

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章