Debugging Question:
Download Questions PDF

What is the output of this program?

#include<stdio.h>
#include<pthread.h>

void *fun_t(void *arg);
void *fun_t(void *arg)
{
int ret;
ret = pthread_exit("Bye");
printf("%dn",ret);
}
int main()
{
pthread_t pt;
void *res_t;
if(pthread_create(&pt,NULL,fun_t,NULL) != 0)
perror("pthread_create");
if(pthread_join(pt,&res_t) != 0)
perror("pthread_join");
return 0;
}
a) 0
b) 1
c) -1
d) none of the mentioned

Linux Debugging Interview Question
Linux Debugging Interview Question

Answer:

d) none of the mentioned
Explanation:
The function pthread_exit() does not return any value. Hence this program will give an error.
Output:
[root@localhost Google]# gcc -o san san.c -lpthread
san.c: In function 'fun_t':
san.c:8:6: error: void value not ignored as it ought to be
[root@localhost google]#

Download Linux Debugging Interview Questions And Answers PDF

Previous QuestionNext Question
Which one of the following string will print first by this program?
#include<stdio.h>
#include<pthread.h>

void *fun_t(void *arg);
void *fun_t(void *arg)
{
printf("Googlen");
pthread_exit("Bye");
}
int main()
{
pthread_t pt;
void *res_t;
if(pthread_create(&pt,NULL,fun_t,NULL) != 0)
perror("pthread_create");
printf("Linuxn");
if(pthread_join(pt,&res_t) != 0)
perror("pthread_join");
return 0;
}
a) Linux
b) Google
c) it can not be predicted
d) none of the mentioned
What is the output of this program no 1?
#include<stdio.h>
#include<pthread.h>

void *fun_t(void *arg);
void *fun_t(void *arg)
{
printf("googlen");
pthread_exit("Bye");
}
int main()
{
pthread_t pt;
void *res_t;
if(pthread_create(&pt,NULL,fun_t,NULL) != 0)
perror("pthread_create");
return 0;
}
a) this program will print the string "google"
b) this program will print nothing
c) segmentation fault
d) run time error