Signori....buonasera

sto smanettando con un programmino accademico in C++ ed ho la seguente situazione

codice:
char var1[20]; 
char var2[20];

cout << "Inserisci la prima var" << endl;
cin.getline(var1, 20);

cout << "Inserisci la seconda var" << endl;
cin >> var2;
eseguendo questo programmi mi ritrovo che non mi fa inserire la prima var, ma direttamente la seconda, come se la prendesse già acquisita ma non ho capito da dove

Inserisci la prima var

Inserisci la seconda var
_
il trattino ovviamente è il cursore che lampeggia e che mi invita ad inserire la variabile richiesta.

Ho sbagliato qualcosa io nella sintassi del metodo getline();?
ringrazio tutti anticipatamente