Linux Search Pattern Question:
Download Questions PDF

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("san.c",O_RDONLY);
new_fd = dup(fd);
close(fd);
read(new_fd,buff,8);
printf("%sn",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:

b) this program will print "#include"
Explanation:
The "dup" system creates the a copy of the file descriptor.
Output:
[root@localhost google]# gcc -o san san.c
[root@localhost google]# ./san
#include
[root@localhost google]#

Download Search Pattern Interview Questions And Answers PDF

Previous QuestionNext Question
What is the output of this program?

#include<stdio.h>
#include<fcntl.h>

int main()
{
int fd, fd2, ret;
fd = open("san.c",O_RDONLY);
ret = close(fd2);
printf("%dn",ret);
}
a) 0
b) 1
c) -1
d) none of the mentioned
What is the output of this program?

#include<stdio.h>
#include<fcntl.h>

int main()
{
int fd, count;
char ch[10];
fd = open("google.txt",O_RDWR|O_CREAT);
write(fd,"linux",5);
lseek(fd,2,SEEK_END);
write(fd,"san",3);
lseek(fd,0,0);
count = read(fd,ch,10);
printf("%sn",ch);
return 0;
}
a) linux
b) linuxsan
c) linux san
d) none of the mentioned