I understand the reference variable concept. It's an alias to the other variable.

```
int varA = 100;
int &varB = varA;  

```

Here `varB` is a referring to `varA`, both pointing to same memory location. Changes to one variable reflect in the other. 

Question:

1. a) `int &c = 100;`  

What is the meaning of the above statement, and how does it differ from the following?  

b) `int c = 100;`
2. Is there any scenario where we need to use 1(a) rather than 1(b)?