#include <stdio.h>
#include <stdlib.h>
int main() {
char *texto; //declara a variável da forma como você sugeriu
texto
= malloc(31); //reserva o espaço em memória para 30 caracteres scanf("%s30", texto
); //Lê caracteres pelo teclado e guarda os primeiros 30 em texto printf("%s", texto
); //imprime o que foi entrado. free(texto
); //libera a memória alocada }
//https://pt.stackoverflow.com/q/37270/101
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KIAppbnQgbWFpbigpIHsKICAgY2hhciAqdGV4dG87IC8vZGVjbGFyYSBhIHZhcmnDoXZlbCBkYSBmb3JtYSBjb21vIHZvY8OqIHN1Z2VyaXUKICAgdGV4dG8gPSBtYWxsb2MoMzEpOyAvL3Jlc2VydmEgbyBlc3Bhw6dvIGVtIG1lbcOzcmlhIHBhcmEgMzAgY2FyYWN0ZXJlcwogICBzY2FuZigiJXMzMCIsIHRleHRvKTsgLy9Mw6ogY2FyYWN0ZXJlcyBwZWxvIHRlY2xhZG8gZSBndWFyZGEgb3MgcHJpbWVpcm9zIDMwIGVtIHRleHRvCiAgIHByaW50ZigiJXMiLCB0ZXh0byk7IC8vaW1wcmltZSBvIHF1ZSBmb2kgZW50cmFkby4KICAgZnJlZSh0ZXh0byk7IC8vbGliZXJhIGEgbWVtw7NyaWEgYWxvY2FkYQp9CgovL2h0dHBzOi8vcHQuc3RhY2tvdmVyZmxvdy5jb20vcS8zNzI3MC8xMDE=