Я написал:программирования в Linux: записать в файл устройства
#include <stdio.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#include <mtd/mtd-user.h>
#include <errno.h>
int main(void)
{
int fd;
char buf[4]="abc";
fd = open("/dev/mtd0", O_RDWR);
lseek(fd, 1, SEEK_SET);
write(fd, &buf, 4);
close(fd);
perror("perror output:");
return 0;
}
Файл/DEV/mtd0 создается с помощью модуля nandsim ядра и запустить
mtdinfo /dev/mtd0
получил значимое output.After я работать моя программа, его вывод:
perror output:: Invalid argument
Если в моей программе есть ошибки?
Ваш отчет об ошибках неверен. Вам нужно проверить возвращаемое значение каждой отдельной функции системного вызова/библиотеки и использовать вызов 'perror' _right after_ a _failed_, без промежуточного вызова функции. Как написано, звонок 'perror', который у вас есть, не дает вам никакой информации вообще. – Mat