title: Incompatible operand types ('char' and 'char *')?
body: <p>Do anybody know what is wrong with this piece of code. it brings up the error above for. I'm trying to create a program that generates a "random" letter, and gives the user up to 6 chances to guess that letter.</p>
  
  <p><code>if ( Play != "y" || Play != "Y" )</code> </p>
  
  <p>Edit: the full code</p>
  
  <pre><code>// This function displays game instructions, and returns nothing.
  void Instructions();
  
  // This function plays one game, and returns "W" if the player wins
  // or "L" if the player runs out of guesses. 
  char Play();
  
  //this function prompts the player to make a guess and returns that guess
  char getLetter();
  
  //The function returns 1 if the guess matches the solution and returns a 0 if they do not match
  char guess();
  
  // This function returns a random letter between "A" and "Z 
  char getAnswer();
  
  int CompareLetters(char guess, char answer);
  
  int main()
  { 
  
      char answer;
  
  
      //1. Greet the user and ask if they would like to play a guessing game.
      printf("\nHello there!\nWould like to play a guessing game?Enter Y or N: \n");
      scanf(" %c", &amp;answer);
  
      if(answer == 'y' || answer == 'Y')
          Instructions();
      {
          printf("\nYou entered Y.  Let's  play!\n");
  
          do{
  
          }while (answer == 'y' || answer == 'Y');
      }
      printf("\nMaybe next time.\n");
      printf("\nGoodBye for now.\n");
      return -1;
  } 
  
  
  void Instructions()
  {
      printf("I have a capital letter in mind. You have 6 chances to guess which letter I am \nthinking. I will let you know if you are too high or too low.\n");
      printf("After each guess, you will be informed if your guess is too high or too low.\nGood luck!\n");
  
  }
  
  int PlayGuess(char answer)
  {
      int NumGuesses=0; int WinOrLose=0;
  
      while (NumGuesses &lt; MAX_GUESSES &amp;&amp; WinOrLose==0);
      {
  
          //6. If the player guesses wrong for a 6th time, console them and let the program end with a return code of 1.  
          char guess;
          guess = getLetter();
          CompareLetters(guess,answer);
          if(CompareLetters(guess,answer)==1)
          {
              WinOrLose = 1;
          }
          else
          {
              NumGuesses++;
          }
      }
      if (WinOrLose==1)
      {
          return 1;
      }
      else
      {
          return 0;
      }
  }
  
  //3. Generate a "random" character between 'A' and 'Z'.  This will be the value the player will try to guess. 
  char getLetter()
  {
      char guess=0;
      printf("Please enter your letter guess:", guess);
      scanf(" %c",&amp;guess);
      return guess;
  }
  
  int CompareLetters(char guess, char answer)
  {
      if(guess == answer)
      {
          return 1;
      }
      else
      {
          ////5. If the player does not guess the right answer, display whether the guess is "too high" or "too low". 
          if (guess &lt; answer)
          {
              printf("Your guess is too low.");
          }
          else
          {
              printf("Your guess is too high.");
          }
  
          {
              printf("\nDo you want to play again? Y or N: \n");
  
          }
          if ( Play != 'y' &amp;&amp;  Play != 'Y' )
              printf("Thanks for playing.Goodbye!/n");
  }
  </code></pre>