read longitud de cadena de stdin [duplicado]

Esta pregunta ya tiene una respuesta aquí:

¿Cómo leer una línea desde la consola en C? 13 respuestas

Quiero tomar una cadena de stdin pero no quiero una matriz estática de tamaño fijo

Sé que scanf necesita algo donde guardar la entrada stdin, pero no puedo hacer algo como esto:

char string[10]
scanf("%s",string);

porque necesito saber antes de cuánto tiempo será la cadena para asignar el espacio de memoria correcto.

¿Me pueden ayudar a resolver este problema?

woooooooo

Todavía estoy bloqueado con este problema ... Me estoy volviendo loco

¿Puedes darme el código de trabajo?

Respuestas a la pregunta(7)

Su respuesta a la pregunta