una pregunta la variable l de la estructura eseta bien inicializada??
Lo digo porque si ves este codigo que te paso:
Código C:
Ver original#define N 90
typedef struct{
char elem[N];
int l;
}Lista;
#include <stdio.h>
void insertar(Lista *list,char e,int pos){
int i;
for(i=list->l+1;i>=pos+1;i--){
list->elem[i]=list->elem[i-1];
}
list->elem[pos]=e;
list->l++;
}
int main()
{
Lista a;
a.l = 0;
insertar(&a,10,0);
insertar(&a,11,1);
insertar(&a,12,1);
printf("%d %d %d\n ", a.
elem[0], a.
elem[1], a.
elem[2]); return 0;
}
Cree un main propio, inicialice la variable a cero y me inserto los tres elementos perfectamente.