Question

I am using the define method in C++ with a backslash, in conjunction with an ifstream, which is called a. However, I get an error when using the backslash, which says:

Error - missing closing quote.

I have tried doing #define BACKSLASH \, but that contains no value at all:

#define BACKSLASH '\'

if((char)a.get() == BACKSLASH // Error here)
{
     // BLAH BLAH BLAH
}
Was it helpful?

Solution

You need to escape it. So either:

#define BACKSLASH '\\'

Or:

if((char)a.get() == '\\')
{
     // BLAH BLAH BLAH
}

OTHER TIPS

Try this:

#define BACKSLASH '\\'

instead of

#define BACKSLASH '\'

ie you need to escape the backslash. Since when '\' means that you are escaping single quote.

Try this:

cout << "\/";

or

cout << "\\";
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top