将C中文件的权限设置为只读
Setting Permissions to a file in C to Read Only
我是 C 编程的新手,我正在尝试将文件的权限设置为只读。我确定我没有正确的指令,当我尝试编译时,我在#include is on "fatal error: io.h no such file或目录”。文件 'time.log' 位于名为 'time_logs' 的目录中,程序将从目录 'time_logs' 所在的同一目录中 运行。
OS 是 Raspberry Pi 4 Arm 使用 GCC 的 Rasbian
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include <io.h>
#include <sys.h>
struct stat st = {0};
int main(void){
if(_chmod("time_logs/time.log", _S_IREAD) == -1)
perror("Not found");
else{
_chmod("time_logs/time.log", _S_IREAD);
}
}
您似乎使用 Windows 手册尝试为 Linux 编码。
#include <unistd.h>
#include <sys/stat.h>
if(chmod("time_logs/time.log", S_IRUSR | S_IRGRP | S_IROTH) == -1)
perror("time_logs/time.log");
但大多数人只是直接输入权限位。这将是 0444
。调整口味。
我是 C 编程的新手,我正在尝试将文件的权限设置为只读。我确定我没有正确的指令,当我尝试编译时,我在#include
OS 是 Raspberry Pi 4 Arm 使用 GCC 的 Rasbian
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include <io.h>
#include <sys.h>
struct stat st = {0};
int main(void){
if(_chmod("time_logs/time.log", _S_IREAD) == -1)
perror("Not found");
else{
_chmod("time_logs/time.log", _S_IREAD);
}
}
您似乎使用 Windows 手册尝试为 Linux 编码。
#include <unistd.h>
#include <sys/stat.h>
if(chmod("time_logs/time.log", S_IRUSR | S_IRGRP | S_IROTH) == -1)
perror("time_logs/time.log");
但大多数人只是直接输入权限位。这将是 0444
。调整口味。