The ones who are crazy enough to think they can change the world are the ones who do.
- Steve Jobs

C Pointer Tricky Interview Questions

In most of the MNC interview questions such as in ZOHO interview question, IVTL Infoview interview questions, Amazon interview questions, GOOGLE interview questions, Infosys interview questions and even in Voonik interview questions, We come across several Tricky C Questions about which 2:5 of the questions are from pointers in c. Solving that kind of tricky C questions is not an easy task for all C programmers. We need more practices to solve it with ease. So we provide 25+ interesting C questions in pointers to make your MNC interview very easy.

Pointer Tricky Questions

6. What will be the output of the C program?

#include<stdio.h>
int main()
{
	char *ptr = "helloworld";
	printf(ptr + 4);
	return 0;
}

A. oworld

B. world

C. hell

D. hello

x

 

Option: A

Explanation

Here the characters in string "helloworld" is placed in address as follows. ptr +4 tells the compiler to start reading from 4th place of a string "Helloworld".

Character address
h 4214784
e 4214785
l 4214786
l 4214787
o 4214788
w 4214789
o 4214790
r 4214791
l 4214792
d 4214793

Answer


7. What will be the output of the C program?

#include<stdio.h>
int main()
{
	char *ptr = "2braces.com";
	printf("%c\n",*&*ptr);
	return 0;
}

A. Address of 2

B. Compilation Error

C. 2

D. Run time error

x

 

Option: C

Explanation

In pointer, address operator and Multiplication operator are always cancel each other. Thus *&*ptr = *ptr.

Answer


8. What will be the output of the C program?

#include<stdio.h>
#include<string.h>
int main(){
	register a = 1;
	int far *ptr;
	ptr = &a;
	printf("%u",ptr);
	return 0;
}

A. Address of a

B. Run time error

C. Garbage value

D. Compile time error

x

 

Option: D

Explanation

"a" is a register variable which holds a value 1. It must be noted that variable a hold its value 1 in a register but not in computer memory location thus the pointer variable ptr cannot hold the address of a.

Answer


9. What will be the output of the C program?

#include<stdio.h>
#include<string.h>
int main(){
	char a = 30, b = 5;
	char *p = &a, *q = &b;
	printf("%d", p - q);
	return 0;
}

A. 1

B. Run time error

C. Compilation Error

D. 25

x

 

Option: A

Explanation

Difference between any two variables of same data type are always one.

Answer


10. What will be the output of the C program?

#include<stdio.h>
int main(){
	int *ptr, b;
	b = sizeof(ptr);
	printf("%d" , b);
	return 0;
}

A. 2

B. 4

C. Compilation Error

D. Run time error

x

 

Option: B

Explanation

Since ptr is a pointer variable of integer data types.

Answer


Report Us

We may make mistakes(spelling, program bug, typing mistake and etc.), So we have this container to collect mistakes. We highly respect your findings.

Report