Cuando i=1, printf(''%d'',L.elem[i]) genera un número incierto
Por ejemplo, defina una matriz de enteros: int my_number[20]; /*Los subíndices válidos de la matriz son 0 - 19 */
Para otro ejemplo, defina un nuevo tipo de datos:
typedef struct my_struct
{
int elem[] />
Este es un nuevo tipo de datos. 100] ;
}MY_DATA ;
MY_DATA L ;
Acerca de L.elem: sus subíndices de matriz válidos son 0 - 99, es decir: L. elem [0] - L.elem[99].
Luego puedes volver a verificar si hay una asignación de memoria dinámica o una fuga de datos en el programa. Si su programa es correcto cuando i tiene cualquier otro valor, pero incorrecto cuando i=1, entonces hay muchas posibilidades de que se trate de una fuga de datos en lugar de un problema de diseño del programa. Los programas de depuración pueden llevar mucho tiempo y ser tediosos.