【代码模板】C语言如何修改文件权限?读写执行权限对应值是多少?(chmod(“./a.out“, 0741);bit 2 1 0表示 读 写 执行)

bash 复制代码
#include "stdio.h"
#include "unistd.h"


int main(int argc, char *argv[])
{
        if (chmod("./a.out", 0741) != 0) {
                perror("Failed to set exec permission");
                return -1;
        }
        return 1;
}

0741中0是8进制,7是 0111, 4是0100, 1是0001

权限三个位分别表示自己,所在组,其他

然后每个位的值 有3个bit,bit2是read(对应值0100, 十进制是4),bit1是write(对应值010, 十进制是2),bit0是exec(对应值01, 十进制是1)。 所以7表示对于用户而言 3个bit都为1,就是rwx;

实操

并且可以看到ll显示的时候 就是按照rwx分别是bit 2 1 0

相关推荐
福尔摩斯张15 分钟前
基于C++的UDP网络通信系统设计与实现
linux·c语言·开发语言·网络·c++·tcp/ip·udp
hkNaruto20 分钟前
【规范】Linux平台C/C++程序版本发布调试规范手册 兼容银河麒麟
linux·c语言·c++
诺....1 小时前
C语言不确定循环会影响输入输出缓冲区的刷新
c语言·数据结构·算法
清轩轩2 小时前
UDS时间参数学习(应用层+网络层+会话层+传输层)
c语言·can·信息与通信·诊断·uds
誰能久伴不乏2 小时前
深入理解 `poll` 函数:详细解析与实际应用
linux·服务器·c语言·c++·unix
Hard but lovely3 小时前
C/C++ ---条件编译#ifdef
c语言·开发语言·c++
EXtreme353 小时前
栈与队列的“跨界”对话:如何用双队列完美模拟栈的LIFO特性?
c语言·数据结构·leetcode·双队列模拟栈·算法思维
南棱笑笑生3 小时前
20251211给飞凌OK3588-C开发板跑飞凌Android14时让OV5645摄像头以1080p录像
c语言·开发语言·rockchip
tang_shou3 小时前
STM32CubeMx使用STM32F4系列芯片实现串口DMA接收
c语言·arm开发·stm32·单片机·嵌入式硬件·mcu·stm32cubemx
南棱笑笑生4 小时前
20251211给飞凌OK3588-C开发板适配Rockchip原厂的Buildroot【linux-6.1】系统时适配adb【type-C0】
linux·c语言·adb·rockchip