linux 文件权限修改(linux c文件)-编程之家

linux c的open(文件路径,O_WRONLY | O_CREAT) 里面的与运算为什么可以实现打不开就创建?

这个是位或,不是与。位或、位与是这样计算的。如:二进制的010|001结果是011,而010&001结果就是0了。O_WRONLY和O_CREAT的关系就相当于上面的010和001。他们位或的值不是0,位与的值就是0了。0表示什么都不做。用了位或后,就在一个整型的值上设置了不同的标志位,open函数会检测对应的标志位,如果该标志位设置为1了,就执行对应的操作。O_CREAT的意思就是创建的意思,在这里就是将创建文件的标志位设置为1,这样open函数无法写这个文件的时候就会创建他。

Linux的C文件以只读模式打开,怎样修改成可读可写呀?

sudo chmod +rwx “文件名”r:读w:写x:运行可以只加一个,即:sudo chmod +w “文件名”