#include
#include
#include
#include
#include
#include
int main(int argc, char *argv[]) {
pid_t chpid;
int fd, variable, status;
char ch;
variable = 9;
fd = open("test.file", O_RDONLY);
chpid = fork();
if (chpid != 0) {
wait(&status);
}
else {
/* Executed only by the child */
variable = 42;
close(fd);
printf("The child has changed the variable to: %d\n", variable);
printf("The child has also closed the file.\n");
return(0);
}
printf("The variable is now: %d\n", variable);
if (read(fd, &ch, 1) < 0) {
perror("READ failed");
return(1);
}
printf("Read from the file: %s\n", &ch);
return(0);
}
© . All rights reserved.