Wait, why isn't cstr const? You're assigning a pointer to a location in memory, why do you need this to be non-const?

Edit : Also, why not just use strcpy?