Examveda
Examveda

What will be the output of the following program?
#include<stdio.h>
void main()
{
      int i = 10;
      void *p = &i;
      printf("%d\n", (int)*p);
}

A. Compiler time error

B. Segmentation fault/runtime crash

C. 10

D. Undefined behavior

Answer: Option A

Solution(By Examveda Team)

p is pointer of type void.


This Question Belongs to C Program >> Pointer

Join The Discussion

Comments ( 5 )

  1. RAJA SEKHAR
    RAJA SEKHAR :
    2 years ago

    *(int*)p it should be like this

  2. Viren Adwani
    Viren Adwani :
    4 years ago

    if we typecat it into int pointer we can like
    *(int*)p;//in printf

  3. Kaizer Chief
    Kaizer Chief :
    6 years ago

    answer will be 10 if it is int *p =&i instead of void *p =&i.

  4. Akshay A.K
    Akshay A.K :
    6 years ago

    Answer is 10,why should error here

  5. Muthu Kutty
    Muthu Kutty :
    8 years ago

    y should return an error.here,we did type casting,so it will be rerurn regarding output.If we don't type casting means

Related Questions on Pointer