Complicated Declarations - Programming

Q1:

What will be the output of the program in DOS (Compiler - Turbo C)?
#include<stdio.h>
double i;

int main()
{
    (int)(float)(char) i;
    printf('%d',sizeof(i));
    return 0;
}

A 4

B 8

C 16

D 22

ANS:A - 4

No answer description is available. Let's discuss.