C ++ - expression primaire attendue avant ''

Mise à jour: Merci à tous pour vos réponses rapides -- le problème est résolu!

Je suis novice en C++ et de la programmation, et ont une erreur que je ne peux pas comprendre. Lorsque j'essaie d'exécuter le programme, j'obtiens le message d'erreur suivant:

stringPerm.cpp: In function int main()’:
stringPerm.cpp:12: error: expected primary-expression before word

J'ai aussi essayé de définir les variables sur une ligne distincte avant de les assigner les fonctions, mais je finis par obtenir le même message d'erreur.

Quelqu'un peut-il vous offrir quelques conseils à ce sujet? Merci à l'avance!

Voir code ci-dessous:

#include <iostream>
#include <string>
using namespace std;

string userInput();
int wordLengthFunction(string word);
int permutation(int wordLength);

int main()
{
    string word = userInput();
    int wordLength = wordLengthFunction(string word);

    cout << word << " has " << permutation(wordLength) << " permutations." << endl;

    return 0;
}

string userInput()
{
    string word;

    cout << "Please enter a word: ";
    cin >> word;

    return word;
}

int wordLengthFunction(string word)
{
    int wordLength;

    wordLength = word.length();

    return wordLength;
}

int permutation(int wordLength)
{    
    if (wordLength == 1)
    {
        return wordLength;
    }
    else
    {
        return wordLength * permutation(wordLength - 1);
    }    
}

source d'informationauteur LTK