Sail E0 Webinar

C++ Programming

POINTERS MCQs

Total Questions : 10
Question 1.


What is the output of this program?


1.
#include
2.
using namespace std;
3.
int main()
4.
{
5.
char *ptr;
6.
char Str[] = "abcdefg";
7.
ptr = Str;
8.
ptr += 5;
9.
cout
  1.    fg
  2.    cdef
  3.    defg
  4.    abcd
 Discuss Question
Answer: Option A. -> fg

Pointer ptr points to string ‘fg’. So it prints fg.
Output:
$ g++ point.cpp
$ a.out
fg


Question 2.


What is the output of this program?


1.
#include
2.
using namespace std;
3.
int main()
4.
{
5.
char arr[20];
6.
int i;
7.
for(i = 0; i < 10; i++)
8.
*(arr + i) = 65 + i;
9.
*(arr + i) = '\0';
10.
cout
  1.    ABCDEFGHIJ
  2.    AAAAAAAAAA
  3.    JJJJJJJJ
  4.    none of the mentioned
 Discuss Question
Answer: Option A. -> ABCDEFGHIJ

Each time we are assigning 65 + i. In first iteration i = 0 and 65 is assigned. So it will print from A to J.
$ g++ point1.cpp
$ a.out
ABCDEFGHIJ


Question 3.

The correct statement for a function that takes pointer to a float, a pointer to a pointer to a char 

and returns a pointer to a pointer to a integer is


  1.    int **fun(float**, char**)
  2.    int *fun(float*, char*)
  3.    int ***fun(float*, char**)
  4.    int ***fun(*float, **char)
 Discuss Question
Answer: Option C. -> int ***fun(float*, char**)

None.


Question 4.


What is the output of this program?


1.
#include
2.
using namespace std;
3.
int main()
4.
{
5.
int a = 5, b = 10, c = 15;
6.
int *arr[ ] = {&a, &b, &c};
7.
cout
  1.    5
  2.    10
  3.    15
  4.    it will return some random number
 Discuss Question
Answer: Option D. -> it will return some random number

Array element cannot be address of auto variable. It can be address of static or extern variables.


Question 5.

What will happen in this code?
 int a = 100, b = 200;
 int *p = &a, *q = &b;
 p = q;


  1.    b is assigned to a
  2.    p now points to b
  3.    a is assigned to b
  4.    q now points to a
 Discuss Question
Answer: Option B. -> p now points to b

Assigning to refrence changes the object to which the refrence is bound.


Question 6.

Which of the following is illegal?


  1.    int *ip;
  2.    string s, *sp = 0;
  3.    int i; double* dp = &i;
  4.    int *pi = 0;
 Discuss Question
Answer: Option C. -> int i; double* dp = &i;

dp is initialized int value of i.


Question 7.

Choose the right option
 string* x, y;


  1.    x is a pointer to a string, y is a string
  2.    y is a pointer to a string, x is a string
  3.    both x and y are pointer to string types
  4.    none of the mentioned
 Discuss Question
Answer: Option A. -> x is a pointer to a string, y is a string

* is to be grouped with the variables not the data types.


Question 8.

What does the following statement mean?
 int (*fp)(char*)


  1.    pointer to a pointer
  2.    pointer to an array of chars
  3.    pointer to function taking a char* argument and returns an int
  4.    function taking a char* argument and returning a pointer to int
 Discuss Question
Answer: Option C. -> pointer to function taking a char* argument and returns an int

None.


Question 9.

The operator used for dereferencing or indirection is ____


  1.    *
  2.    &
  3.    ->
  4.    ->>
 Discuss Question
Answer: Option A. -> *

None.


Question 10.

Which one of the following is not a possible state for a pointer.


  1.    hold the address of the specific object
  2.    point one past the end of an object
  3.    zero
  4.    point to a tye
 Discuss Question
Answer: Option D. -> point to a tye

A pointer can be in only 3 states a,b and c.


Latest Videos

Latest Test Papers