I am trying to compile some code that was given to me that I’m told compiles fine. Perhaps on a different compiler. I am using VS2010 and I have the following line:
char *dot = strrchr(filename, '.');
This causes the compiler error:
“error C2440: ‘initializing’: cannot convert from ‘const char *’ to
‘char *’
How come? And how do I fix it?
The error message is pretty clear.
strrchrreturns aconst char*. So you need:If you really need a
char*, you can usestrcpyfor conversion.