C++ -- expected primary-expression before ' '

145,890

Solution 1

You don't need "string" in your call to wordLengthFunction().

int wordLength = wordLengthFunction(string word);

should be

int wordLength = wordLengthFunction(word);

Solution 2

Change

int wordLength = wordLengthFunction(string word);

to

int wordLength = wordLengthFunction(word);

Solution 3

You should not be repeating the string part when sending parameters.

int wordLength = wordLengthFunction(word); //you do not put string word here.
Share:
145,890

Related videos on Youtube

LTK
Author by

LTK

Updated on July 27, 2020

Comments

  • LTK
    LTK over 3 years

    I am new to C++ and programming, and have run into an error that I cannot figure out. When I try to run the program, I get the following error message:

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

    I've also tried defining the variables on a separate line before assigning them to the functions, but I end up getting the same error message.

    Can anyone offer some advice about this? Thanks in advance!

    See code below:

    #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);
        }    
    }
    
    • Michael Burr
      Michael Burr over 11 years
      int wordLength = wordLengthFunction(word);

Related