我想从文件中读取一些文本并使用它写入到另一个open(),read()和write().
这是我open()的文件写入(我想创建一个新文件并写入其中):
fOut = open ("test-1", O_RDWR | O_CREAT | O_SYNC);
Run Code Online (Sandbox Code Playgroud)
这是将文件权限设置为我根本不理解的东西.这是输出ls -l:
---------T 1 chaitanya chaitanya 0 2010-02-11 09:38 test-1
Run Code Online (Sandbox Code Playgroud)
甚至读取权限也被锁定.我试着寻找这个,但找不到任何东西.奇怪的是,write()仍然成功地将数据写入文件.
另外,如果我做'chmod 777 test-1',事情就会再次开始正常工作.
有人可以让我知道我在公开电话中哪里出错吗?
谢谢!
供您参考,我已粘贴以下完整程序:
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <fcntl.h>
int main () {
char buffer[512], ch;
int fIn, fOut, i;
ssize_t bytes;
FILE *fp = NULL;
//open a file
fIn = open ("test", O_RDONLY);
if (fIn == -1) {
printf("\nfailed to …Run Code Online (Sandbox Code Playgroud)