Giriş
Şu satırı dahil ederiz.
Dosyanın başından itibaren 16. byte'a gitmek için şöyle yaparız.
lseek metodu
fseek çağrısının POSIX dünyasında karşılığı lseek. Şu satırları dahil ederiz.
Elimizde şöyle bir kod olsun. Okuma işlemi 4 byte ilerletir. Yazma işlemi 4. byte'tan itibaren başlar.
Şu satırı dahil ederiz.
#include <cstdio>Dosyanın başından itibaren 16. byte'a gitmek için şöyle yaparız.
FILE *f = fopen ('...', "rb");
fseek (f,16,SEEK_SET);lseek metodu
fseek çağrısının POSIX dünyasında karşılığı lseek. Şu satırları dahil ederiz.
#include <sys/types.h>
#include <unistd.h>int fd = ...;
lseek (fd, 0, SEEK_SET);Elimizde şöyle bir kod olsun. Okuma işlemi 4 byte ilerletir. Yazma işlemi 4. byte'tan itibaren başlar.
int num = 0;
int fd = open("/dev/sda6", O_RDWR);
ssize_t ret = read(fd, &num, sizeof(int));
...
num = 199;
ret = write(fd, &num, sizeof(int));
...
close(fd);lseek(fd,0,SEEK_SET);#include <unistd.h>
ssize_t pread(int fd, void *buf, size_t count, off_t offset);
ssize_t pwrite(int fd, const void *buf, size_t count, off_t offset);ssize_t ret = pread(fd, &num, sizeof(int), 0);
ssize_t ret = pwrite(fd, &num, sizeof(int), 0);