char* end = "HelloThere";
Строковый литерал "HelloThere" находится в местоположении только для чтения и не подлежит изменению.
char* Problems::reverseCString(char* woot)
{
// Both woot and end are pointing to the string literal stored in
// read only location.
}