What is the output of this program?
#include<stdio.h>
#include<stdlib.h>
#include<fcntl.h>
int main()
{
int fd, new_fd;
char *buff;
buff = (char *)malloc(sizeof(char)*8);
fd = open("test.c",O_RDONLY);
new_fd = dup(fd);
close(fd);
read(new_fd,buff,8);
printf("%s\n",buff);
}
#include<stdio.h>
#include<stdlib.h>
#include<fcntl.h>
int main()
{
int fd, new_fd;
char *buff;
buff = (char *)malloc(sizeof(char)*8);
fd = open("test.c",O_RDONLY);
new_fd = dup(fd);
close(fd);
read(new_fd,buff,8);
printf("%s\n",buff);
}A. this program will not print anything
B. this program will print "#include"
C. this program will give the segmentation fault
D. this program will give the syntax error
Answer: Option B

Join The Discussion