Is each of the following definitions valid or invalid If any
Is each of the following definitions valid or invalid? If any is invalid state why?
int ivar;
int *iptr
int ivar, *ptr = &ivar;
float fvar;
int *ivar = &fvar;
int nums [50], *iptr = nums;
int *iptr = &ivar;
int ivar;
Solution
 ===================================================================
  int ivar;
----------
 Answer:
 ----------
    Valid
--------------
 Explanation:
 --------------
    int ivar; is a valid defination , it states declaring a ivar variable of type
 int.
 ===================================================================
  int *iptr;
----------
 Answer:
 ----------
    Valid
--------------
 Explanation:
 --------------
    int *iptr; is a valid defination, it states declaring *iptr variable of type integer pointer.
   
 ===================================================================
  int ivar, *ptr = &ivar;
----------
 Answer:
 ----------
    Valid
--------------
 Explanation:
 --------------
    int ivar, *ptr = &ivar; is a valid defincation.
   
    It states ivar variable of type integer and
    *ptr of type integer pointer holding address of ivar variable.
   
    For Example: if ivar = 5 then *ptr value also 5. Since *ptr is holding the address of ivar.
   
 ===================================================================
  float fvar;
----------
 Answer:
 ----------
    Valid
--------------
 Explanation:
 --------------
    float fvar; is valid defination. it states declaring fvar variable of type float.
   
 ===================================================================
  int *ivar = &fvar;
----------
 Answer:
 ----------
    Invalid
--------------
 Explanation:
 --------------
    int *ivar = &fvar; is a invalid defination, Since here *ivar pointer of type integer.
    Which can not hold the address of type float. hence the defination is invalid.
   
 ===================================================================
  int nums [50], *iptr = nums;
----------
 Answer:
 ----------
    Valid
--------------
 Explanation:
 --------------
    int nums [50], *iptr = nums; is valid defination, Since nums is of type integer array
    and *iptr of type integer pointer, Which is holding starting address of array.
   
    For Example: if nums [2] ={1,2} then *iptr value printed is 1. Since *iptr is holding the base address of
    integer array nums.
 ===================================================================
  int *iptr = &ivar;
----------
 Answer:
 ----------
    Valid
--------------
 Explanation:
 --------------
    int *iptr = &ivar; is valid defination since it is holding the address of the ivar of type integer.
    Consider initial declarion for ivar is int ivar;
   
 ===================================================================
  int ivar;
----------
 Answer:
 ----------
    Valid
--------------
 Explanation:
 --------------
    int ivar; is a valid defination , it states declaring a ivar variable of type
 int.
===================================================================



