Problema 596

Un programador necesita reservar memoria dinámica para almacenar una cadena de caracteres que se ingresará a través de la entrada estándar del usuario. ¿Cómo puede hacer esto de manera segura y eficiente?