На этот вопрос уже есть ответ здесь:
Прежде всего извините, если это глупый вопрос (и, конечно, это так), но я действительно новичок в использовании Syscall в Unix. Я пытался что-то записать в файл, используя «запись»; он правильно создает файл, но в нем ничего не написано, это код:
int main(void) {
int fd;
char *string = "Test";
if(fd=open("home/user/test.txt", O_WRONLY | O_APPEND | O_CREAT)==-1){
perror("Open failed");
}
printf("%d\n", strlen(string));
printf("Wrote %d byte on the file", write(fd,string,strlen(string)));
close(fd);
return 0;
}
Где моя проблема? Спасибо