open
open是多种语言、环境的一种函数,LINUX中open函数作用:打开和创建文件。PB程序语言中open功能:打开窗口。
基本信息
- 中文名
open函数
- 外文名
open
- 应用
PB程序、C语言
- 类别
程序函数
- 系统
LINUX
- 作用
打开和创建文件
程序语言
系统调用函数
作用:打开和创建文件。
简述:open是UNIX系统(包括LINUX、Mac等)的系统调用函数,区别于C语言库函数fopen。
对于open函数来说,第三个参数仅当创建新文件时(即 使用了O_CREAT 时)才使用,用于指定文件的访问权限位(access permission bits)。pathname 是待打开/创建文件的POSIX路径名(如/home/user/a.cpp);flags 用于指定文件的打开/创建模式,这个参数可由以下常量(定义于fcntl.h)通过逻辑位或逻辑构成。
打开/创建文件时,至少得使用上述三个常量中的一个。以下常量是选用的:
设置为非阻塞模式
以下三个常量同样是选用的,它们用于同步输入输出
open返回的文件描述符一定是最小的未被使用的描述符。
如果 NAME_MAX(文件名最大长度,不包括'\0')是 14,而我们想在当前目录下创建文件名长度超过 14 字节的文件,早期的 System V 系统(如 SVR2)会截断超出部分,只保留前 14 个字节;而由 BSD 衍生的(BSD-derived)系统会返回错误信息,并且把 errno 置为 ENAMETOOLONG。
POSIX.1 引入常量 _POSIX_NO_TRUNC 用于决定是否截断长文件名/长路径名。如果_POSIX_NO_TRUNC 设定为禁止截断,并且路径名长度超过 PATH_MAX(包括 '\0'),或者组成路径名的任意文件名长度超过 NAME_MAX,则返回错误信息,并且把 errno 置为 ENAMETOOLONG。
PB程序语言
功能打开窗口。该函数有两种语法格式:
语法一、打开编程时已知数据类型的窗口对象;
语法二、打开程序运行后才能确定数据类型的窗口对象。下面分别予以介绍:
语法一、打开编程时已知数据类型的窗口对象
语法Open( windowvar {,parent } )
参数windowvar:要打开窗口的窗口名,可以使用窗口画笔定义的窗口对象名,也可以使用该窗口对象的某个变量。Open()函数把打开窗口的引用放置到windowvar变量中parent:可选项,指定要打开窗口的父窗口,要打开窗口成为父窗口的子窗口,只有当要打开窗口需要成为某个窗口的子窗口时才需要指定该参数。如果应用程序使用Open()函数打开某个子窗口或弹出窗口而又省略了该参数,那么当前活动窗口成为被打开窗口的父窗口返回值Integer。函数执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,Open()函数返回NULL。
语法二、打开程序运行后才能确定数据类型的窗口对象