Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Homework Help: Small and quick C++ problem

  1. Oct 4, 2005 #1

    Zurtex

    User Avatar
    Science Advisor
    Homework Helper

    Just been introduced to the world of C++ as I'm taking a course on it in my maths degree. We are asked to write a simple program that takes in 3 numbers, sorts them in terms of order and then outputs them.

    Not going to type my full program as that would probably be a waste of your time but here are the two important lines I am stuck on:

    char qualifier1;
    ...
    qualifier1 = "=";

    And I'm getting the error when I try to compile this:

    invalid conversion from `const char*' to `char'

    Can anyone help me please, I'm not sure what this means and I am struggling to fix it.
     
  2. jcsd
  3. Oct 4, 2005 #2
    i believe the correct syntax for a single char is ' ' not " "...if i remember correctly " " denotes strings...and thus your error is saying
    cannot convert const char* "=" (string) to a char (single char qualifier)
     
  4. Oct 4, 2005 #3
    Using double quotes ("") in C and C++ returns a constant character pointer which points to a null-terminated string in the static section of memory. So if you write char* ptr = "dog"; you get ptr pointing to a character array consisting of 'd', 'o', 'g', and '\0', the null terminator.

    What you're looking to do is use single quotes. When you type "=", you get the C-string "=". What you want to do is '=', with single quotes. This returns a plain character.

    Edit: whoops too late
     
  5. Oct 4, 2005 #4

    Zurtex

    User Avatar
    Science Advisor
    Homework Helper

    Thanks :biggrin:
     
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook