Ciao ragazzi ho qualche difficoltà a capire la struttura del linguaggio c++
qualcuno è in grado di aggiungermi qlc breve commento dento allo codice di esempio
qui sotto??

non capisco il
TFrase f;

cosa significa?

-------------------------------------------------------------------------------------

#include <iostream.h>
#include <stdlib.h>

const int NMaxChars = 255;
typedef char TFrase[NMaxChars];

int ContaParole(const TFrase frase);

int main()
{
TFrase f;

cout << "Inserisci una frase: ";
cin.getline(f, NMaxChars); //oppure: gets(f);

cout << "\nLa frase\n\n" << f << "\n\ncontiene " << strlen(f) << " caratteri e " << ContaParole(f) << " parole.\n";

system("PAUSE");
return 0;
}

int ContaParole(const TFrase frase) {
int n = 0;
int len;
int indice = 0;

len = strlen(frase);

while (indice < len) {
//porta indice al successivo carattere diverso da spazio o alla fine
while ( (indice < len) && (frase[indice] == ' ') )
indice++;

//se indice non supera len allora inizia una nuova parola: n++
if (indice < len)
n++;

//porta indice al successivo spazio o alla fine
while ( (indice < len) && (frase[indice] != ' ') )
indice++;
}

return n;


}

----------------------------------------------------------------------------

grazie