C-使用Sprintf使用读写系统调用



我只使用C程序的读和编写系统调用。因此,不能使用printf,getC等等任何东西,因为我不能使用printf,所以我需要使用sprintf。但是,我找不到如何将Sprintf与文件I/O系统调用一起使用的示例。我需要o使用写(....),读(.....)

通过系统调用更简单,并且比对C file-i/o库的呼叫要较低。这些系统调用的使用需要一个名为" fcntl.h"的标头文件:

 #include <fcntl.h>

"creat()"系统调用当然会创建一个文件。它具有语法:

<file descriptor variable> = creat( <filename>, <protection bits> );
ex:
   #define RD_WR 0666 
   int fd;                               /Define file descriptor. */    
   fd = creat( "data", RD_WR );

"open()"系统调用打开现有的读取或写作文件。它具有语法

   <file descriptor variable> = open( <filename>, <access mode> );
   O_RDONLY    Open for reading only.
   O_WRONLY    Open for writing only.
   O_RDWR      Open for reading and writing.
ex:
   int fd;
   fd = open( "data", O_WRONLY );

"close()"系统调用非常简单。当无需进一步访问它时,它所要做的就是"close()"打开文件。"close()"系统调用具有语法:

   close( <file descriptor> );

"write()"系统调用将数据写入打开文件。它具有语法:

   write( <file descriptor>, <buffer>, <buffer length> );
ex:
  float array[10];
   ...
   write( fd, array, sizeof( array ) );

"read()"系统呼叫从打开文件中读取数据。它的语法与"write()"调用的语法完全相同:

   read( <file descriptor>, <buffer>, <buffer length> );

最新更新