Re: sem memória quando existe memória ;)
Olá Tadeu.
Não sei como é seu código, mas
simulei algo parecido aqui.
Criei o seguinte código:
#include <stdio.h>
int main(int argc, char **argv)
{
int a, b, c;
int vetor[128][128][128];
for (a=0; a<128; a++)
for (b=0; b<128; b++)
for (c=0;
c<128; c++)
vetor[a][b][c] = (a+b+c);
printf("Posição
vetor[80][90][10] = %d.\n",
vetor[80][90][10]);
return 0;
}
Neste meu exemplo, o problema que
você descreveu ocorre, mas existe
uma explicação para isso.
A variável vetor é local e por isso
é alocada na pilha. O tamanho
da pilha é determinado pelo comando
"ulimit". Atente a saída do comando:
alebyte@matrix:~$ ulimit -a
[editado]
stack size (kbytes, -s)
8192 <----
cpu time (seconds, -t)
unlimited
max user processes (-u)
1019
Neste caso, é necessário aumentar a
"stack size", o que eu testei
e funciona perfeitamente.
Outras soluções são:
* Alocação dinâmica.
* Declara a variável em questão como
global.
Provavelmente a máquina SUSE tem uma
configuração diferente para
pilha.
--
===========================
[]'s Alexandre Costa
Linux Reg. User: 129596
E-mail: alebyte@bol.com.br
ICQ UIN nº: 19607379
---------------------------
Powered by Debian GNU/Linux
__________________________________________________________________________
Quer ter seu próprio endereço na Internet?
Garanta já o seu e ainda ganhe cinco e-mails personalizados.
DomíniosBOL - http://dominios.bol.com.br
Reply to: