Pasar matrices como argumento

Odoacro
06 de Agosto del 2003
Echadle un vistazo a este codigo y mirad lo ke me pasa:

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

#define MAX 6
#define MAXCLI 5
#define MAXDIRE 50

typedef struct
{
int codigoPedido;
int codigoComponente;
int unidades;
char codigoCliente[MAXCLI];
char direccion[MAXDIRE];
}TCliente;

void iniciar(TCliente []);

void main(void)
{
int opcion;
TCliente info[MAX];

iniciar(info);

...
}

void iniciar(TCliente iniciar[])
{
int i;

for (i=0; i<MAX; i++)
{
strcpy(iniciar[i].codigoCliente, "NULL");
strcpy(iniciar[i].direccion, "NULL");
iniciar[i].codigoComponente=0;
iniciar[i].codigoPedido=0;
iniciar[i].unidades=0;
}
}

El caso es que usando el debugger en la funcion iniciar me pone todo el rato en los campos de la variable iniciar de tipo TCliente "valor no definido" y ni me hace 0 los enteros ni me copia las cadenas "NULL". Me estoy volviendo loco con esto pues con otro programa similar los prototipos, llamadas y demás son iguales y si funciona.. AYUDA!