Neither of these lines would compile. The correct code is probably this:
1 2
string1.copy(ptr1, length, 0); // no *'s
ptr1[length] = '/0';
The trailing zero is the null terminator. It marks the end of the string... since char arrays don't have 'length' members like the string class does -- it's just assumed they continue on until a null character (0) is found.