What does while(cin) mean? What about while(cin.good())?

Is there a difference between c=cin.get() and cin.get(c)?