Когда я пытаюсь запустить свой код для пользовательского теста, я не могу найти файл, но когда я ищу файл в dev, я могу найти его.
achraf@achraf:/dev$ ls -l charDevice_part1_0
crw-r--r-- 1 root root 240, 0 Apr 20 00:52 charDevice_part1_0
achraf@achraf:/dev$ ls -l charDevice_part2_0
crw-r--r-- 1 root root 241, 0 Apr 20 00:36 charDevice_part2_0
Это то, что я вижу в терминале.И каждый раз, когда я запускаю свою пользовательскую тестовую программу, я получаю «файл не существует», я не знаю, сделал ли я что-то не так в моем usertest.c.Можете ли вы помочь мне, пожалуйста?
Мой usertest.c:
#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdlib.h>
int main()
{
int fd;
ssize_t readVar, writeVar;
char myRead[10];
char myWrite[27] = "0";
fd = open("/dev/charDevice_part2_0", O_RDWR);
if(fd == -1)
{
printf("file does not exist\n");
exit(-1);
}
readVar = read(fd, myRead, 10);
printf("Number of bytes read: %zd\n", readVar);
writeVar = write(fd,& myWrite, sizeof(myWrite));
printf("%zd bytes were written to the kernel\n", writeVar);
close(fd);
return 0;
}