strlen

strlen

por Paulo Laurent Waelkens -
Número de respostas: 1

Olá,

então, eu usei essa função pra alocar uma matriz de chars:

char **AlocaMatriz(int m,int n)
{
  char **A;
  int i,j;
  j=0;
  A=malloc(m*sizeof(char*));
  for(i=0;i<m;i++)
                  A[i]=malloc(n*sizeof(char));
  for(i=0;i<m;i++)
                  for(j=0;j<n;j++)
                             A[i][j]='0';
  for(i=0;i<m;i++)
                  A[i][n-1]='\n';    
  return A;
}

Quando eu dou um comando

A=AlocaMatriz(1,2);

e depois i=strlen(A[0]); i=3

Agora se eu dou um comando

A=AlocaMatriz(4,5)

i=strlen(A[0]); i=5

e finalmente se mando

A=AlocaMatriz(9,10);

i=strlen(A[0]); i=12;

Achei isso beeeeem bizarro, alguém sabe me dizer o que ocorre?

Valeu