Use a class/struct struct char_array { char *array; char_array(int size) { array = new char[size]; } ~char_array() { delete [ ] array; } operator char*() { return array; } };