c - 尝试打开文件 c 系统调用

标签 c

我正在尝试使用系统调用打开二进制文件,但无法使用函数(fopen 等)

if ((fd2 = open("RandomStruct.bin",O_RDWR|O_CREAT)) == -1) 
        err_sys("Failed to open binary\n");

这行代码不正确吗?谢谢! 顺便说一句,我得到“:错误 0”O.o

最佳答案

不,这是不正确的。如果指定 O_CREAT 标志,则 open() 需要另一个参数,即新文件的权限位。例如

 open("RandomStruct.bin",O_RDWR|O_CREAT, 0755);

关于c - 尝试打开文件 c 系统调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14641610/

相关文章:

c - 对数组中的整数求和并将结果存储在数组中

c - 为什么我的程序执行扫描和打印两次?

将字符数字转换为C中对应的整数

c - 以char为索引的函数指针跳转表

我可以修改动态链接器并在不重新编译 glibc 的情况下使用吗?

c - 使用头文件 C 中定义的结构

c - Qsort with array of struct 更改结构的内容

header 中的匿名前向声明冲突

c - Xcode 链接器错误(重复符号),而 gcc 工作正常

c - 有没有好的C语言集合库?