char x[3];
char buff, c;
x[0]='y';
int offset, i;
int fd;
fd = open("test1.txt", O_RDONLY);
if(fd==-1){ printf("Error on fopen."); exit(1); }
offset = lseek(fd, 1, SEEK_END);
printf("Size of file is: %d. \n", offset);
for(i=offset-1; i>=0; i--)
{
c = read(fd, &buff, 1);
printf("The character is: %c. \n", c);
}
close(fd);
Выполнение этого дает мне.Использование lseek() печатает повторяющиеся символы
Size of file is: 6.
The character is: .
The character is: .
The character is: .
The character is: .
The character is: .
The character is: .
В тестовом файле содержится только слово «TEST». Я хочу, чтобы иметь возможность печатать слово назад.
Вы забыли перемотать или искать указатель файла. Вы читаете из конца файла. –
Ну, для одной вещи вы печатаете возвращаемое значение 'read', которое не является символом, читаемым. См. Http://linux.die.net/man/2/read – missimer