COLUMNA 1: Imos agora corrixir este último programa. E esta vez, imos reservar explicitamente algunha memoria en que o entrada do usuario será almacenado. Para iso, imos mellorar en que o primeiro liña de código na que declarou s anteriormente para ser unha estrela de char. Esta vez, imos re-declarar lo do seguinte xeito - carácter s soporte de 16, por exemplo, preto soporte. Noutras palabras, imos declarar sa non máis ser un enderezo dun personaxe, senón un conxunto de 16 carácteres. Deste xeito, o usuario pode introducir ata 15 caracteres e aínda deixar espazo para un terminador nulo. Imos continuar a gardar, compilar e executar este programa. Facer barra scanf2 punto scanf2. Imos agora escribir unha cadea como Ola, e estamos agradeceu o Olá Agora, aínda hai un problema. Eu só escriba Ola, o que só é cinco personaxes, máis 1 ao nulo Terminator. Iso nos deixa con só unha necesidade de seis bytes. Pero, desgraciadamente, só alocados 16 en total. Polo tanto, se o usuario realmente tipo en 16 caracteres, ou 17, ou varios centos caracteres, aínda non vai ten espazo suficiente na memoria ao de entrada do usuario. E, de feito, iso é o que fai obter a entrada do usuario de forma dificultade en xeral. E, de feito, é por iso que nós Implementar a función cadea get no primeiro lugar na biblioteca CS50 - para descubrir como xestionar os situacións en que o usuario escribe máis caracteres que nós inicialmente previsto. Francamente, sen totalmente reescribir este programa, non hai solución limpa. Pola contra, o que temos que facer é obter un personaxe do usuario, un de cada tempo, unha e outra vez. E en cada momento, se entendemos que estamos sen memoria, teriamos que a Nese punto volver e realocar algo máis de memoria, por favor copie o usuario do entrada anterior do noso primeiro anaco de memoria para a nova, maior bloque de memoria. E, a continuación, repetir o proceso de novo e novo ata que o usuario está feito introducindo súa entrada.