The first example does not work when you go to delete the pointer. The program either hangs when I add the null terminator or without it I get:
Debug Assertion Fai
A pointer holds an address. The = operator for a pointer changes the address held.
at = "tw";
Makes at point to the array "tw" (an array created by the compiler to hold the characters tw), it no longer points to the array you created with new. created in the file.
at[2] = '\0';
Adds a NULL to the end of the complier array.