Re: [FUG-BR] Arvore binária erro de memoria no FreeB SD

2006-10-31 Por tôpico Giovanni P. Tirloni
Cristiano Panvel wrote:
 Uma pergunta, estou fazendo um algoritmo de arvore binária para
 efetuar processamento de expressões, e funciona corretamente em Linux
 e AIX mais no FreeBSD está dando erro nesta parte do código e não sei
 o que pode ser.
 
 
 init bitree_merge(BiTree *merge, BitTree *left, BiTree *right, const void 
 *data)
 {
 
 bitree_init(merge, left-destroy);
 
 if(bitree_ins_left (merge, NULL, data) !=0) {
 
 /* Aqui da erro no merge quando executo erro de memoria full */
 
 return;
 }
 
 Já procurei isso em vários lugares, e não acho o erro.


  No mínimo precisamos saber qual o erro e o pedaço de código que gera 
esse erro.


-- 
Giovanni P. Tirloni
http://www.tirloni.org

-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Arvore binária erro de memoria no FreeB SD

2006-10-31 Por tôpico Rogério Schneider
Manda a função bitree_ins_left() pq eh nela que está o erro.
Eu uso AVL e binary no FreeBSD/Linux sem problemas.

Att,
RS


On 10/31/06, Giovanni P. Tirloni [EMAIL PROTECTED] wrote:
 Cristiano Panvel wrote:
  Uma pergunta, estou fazendo um algoritmo de arvore binária para
  efetuar processamento de expressões, e funciona corretamente em Linux
  e AIX mais no FreeBSD está dando erro nesta parte do código e não sei
  o que pode ser.
 
 
  init bitree_merge(BiTree *merge, BitTree *left, BiTree *right, const void 
  *data)
  {
 
  bitree_init(merge, left-destroy);
 
  if(bitree_ins_left (merge, NULL, data) !=0) {
 
  /* Aqui da erro no merge quando executo erro de memoria full */
 
  return;
  }
 
  Já procurei isso em vários lugares, e não acho o erro.


  No mínimo precisamos saber qual o erro e o pedaço de código que gera
 esse erro.


 --
 Giovanni P. Tirloni
 http://www.tirloni.org

 -
 Histórico: http://www.fug.com.br/historico/html/freebsd/
 Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd



-- 
Att,

Rogério Schneider
+55 (55) 9985 2127
+55 (55) 3332 5923
+55 (55) 3321 1535

MSN: [EMAIL PROTECTED]
ICQ: 78778973
GTalk: [EMAIL PROTECTED]
Skype: stockrt
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Arvore binária erro de memoria no FreeB SD

2006-10-31 Por tôpico Eder
Olá,

Como os nobres colegas já falaram, poste sempre o código todo, com o
erro do compilador se possível.

Se você para chutar alguma coisa, diria que você não está destruindo o
merge, então nesta parte do código você deveria faze-ló, e mais se não
está fazendo isso em algum outro ponto também dará problema em
qualquer outro OS.

E principalmente se você processando expressões do tipo pós-fixa
algo assim, por
exemplo:

(((74 10 -)32/) (23 17 +)x = 80

Elas possuem diferença, provavelmente sabe disso, tente detruir o
merge no final do processo assim.

init bitree_merge(BiTree *merge, BitTree *left, BiTree *right, const void *data)
{

bitree_init(merge, left-destroy);

if(bitree_ins_left (merge, NULL, data) !=0) {

/* Aqui da erro no merge quando executo erro de memoria full */
bitree_destroy(merge);

return -1;
}

OBS:
Quando retornar algo, não faça simplesmente return, coloque o
parametro inteiro junto
você está trabalhando com C puro, não é um método de C++.

Att, Eder


On 10/31/06, Rogério Schneider [EMAIL PROTECTED] wrote:
 Manda a função bitree_ins_left() pq eh nela que está o erro.
 Eu uso AVL e binary no FreeBSD/Linux sem problemas.

 Att,
 RS


 On 10/31/06, Giovanni P. Tirloni [EMAIL PROTECTED] wrote:
  Cristiano Panvel wrote:
   Uma pergunta, estou fazendo um algoritmo de arvore binária para
   efetuar processamento de expressões, e funciona corretamente em Linux
   e AIX mais no FreeBSD está dando erro nesta parte do código e não sei
   o que pode ser.
  
  
   init bitree_merge(BiTree *merge, BitTree *left, BiTree *right, const void 
   *data)
   {
  
   bitree_init(merge, left-destroy);
  
   if(bitree_ins_left (merge, NULL, data) !=0) {
  
   /* Aqui da erro no merge quando executo erro de memoria full */
  
   return;
   }
  
   Já procurei isso em vários lugares, e não acho o erro.
 
 
   No mínimo precisamos saber qual o erro e o pedaço de código que gera
  esse erro.
 
 
  --
  Giovanni P. Tirloni
  http://www.tirloni.org
 
  -
  Histórico: http://www.fug.com.br/historico/html/freebsd/
  Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
 


 --
 Att,

 Rogério Schneider
 +55 (55) 9985 2127
 +55 (55) 3332 5923
 +55 (55) 3321 1535

 MSN: [EMAIL PROTECTED]
 ICQ: 78778973
 GTalk: [EMAIL PROTECTED]
 Skype: stockrt
 -
 Histórico: http://www.fug.com.br/historico/html/freebsd/
 Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd



-- 
Linux is for people who hate Windows,
BSD is for people who love UNIX
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


Re: [FUG-BR] Arvore binária erro de memoria no FreeB SD

2006-10-31 Por tôpico Cristiano Panvel
Descupe pessoal nao ter enviado o codigo todo pois tinha varias coisas
confidenciais no meio, mais o erro era realmente no destroy do merge
depois do precessamento da expressão obrigado pela ajuda dos colegas.

Abraços.

On 10/31/06, Eder [EMAIL PROTECTED] wrote:
 Olá,

 Como os nobres colegas já falaram, poste sempre o código todo, com o
 erro do compilador se possível.

 Se você para chutar alguma coisa, diria que você não está destruindo o
 merge, então nesta parte do código você deveria faze-ló, e mais se não
 está fazendo isso em algum outro ponto também dará problema em
 qualquer outro OS.

 E principalmente se você processando expressões do tipo pós-fixa
 algo assim, por
 exemplo:

 (((74 10 -)32/) (23 17 +)x = 80

 Elas possuem diferença, provavelmente sabe disso, tente detruir o
 merge no final do processo assim.

 init bitree_merge(BiTree *merge, BitTree *left, BiTree *right, const void 
 *data)
 {

 bitree_init(merge, left-destroy);

 if(bitree_ins_left (merge, NULL, data) !=0) {

 /* Aqui da erro no merge quando executo erro de memoria full */
 bitree_destroy(merge);

 return -1;
 }

 OBS:
 Quando retornar algo, não faça simplesmente return, coloque o
 parametro inteiro junto
 você está trabalhando com C puro, não é um método de C++.

 Att, Eder


 On 10/31/06, Rogério Schneider [EMAIL PROTECTED] wrote:
  Manda a função bitree_ins_left() pq eh nela que está o erro.
  Eu uso AVL e binary no FreeBSD/Linux sem problemas.
 
  Att,
  RS
 
 
  On 10/31/06, Giovanni P. Tirloni [EMAIL PROTECTED] wrote:
   Cristiano Panvel wrote:
Uma pergunta, estou fazendo um algoritmo de arvore binária para
efetuar processamento de expressões, e funciona corretamente em Linux
e AIX mais no FreeBSD está dando erro nesta parte do código e não sei
o que pode ser.
   
   
init bitree_merge(BiTree *merge, BitTree *left, BiTree *right, const 
void *data)
{
   
bitree_init(merge, left-destroy);
   
if(bitree_ins_left (merge, NULL, data) !=0) {
   
/* Aqui da erro no merge quando executo erro de memoria full */
   
return;
}
   
Já procurei isso em vários lugares, e não acho o erro.
  
  
No mínimo precisamos saber qual o erro e o pedaço de código que gera
   esse erro.
  
  
   --
   Giovanni P. Tirloni
   http://www.tirloni.org
  
   -
   Histórico: http://www.fug.com.br/historico/html/freebsd/
   Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
  
 
 
  --
  Att,
 
  Rogério Schneider
  +55 (55) 9985 2127
  +55 (55) 3332 5923
  +55 (55) 3321 1535
 
  MSN: [EMAIL PROTECTED]
  ICQ: 78778973
  GTalk: [EMAIL PROTECTED]
  Skype: stockrt
  -
  Histórico: http://www.fug.com.br/historico/html/freebsd/
  Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
 


 --
 Linux is for people who hate Windows,
 BSD is for people who love UNIX
 -
 Histórico: http://www.fug.com.br/historico/html/freebsd/
 Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd

-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd


[FUG-BR] Arvore binária erro de memoria no FreeB SD

2006-10-30 Por tôpico Cristiano Panvel
Uma pergunta, estou fazendo um algoritmo de arvore binária para
efetuar processamento de expressões, e funciona corretamente em Linux
e AIX mais no FreeBSD está dando erro nesta parte do código e não sei
o que pode ser.


init bitree_merge(BiTree *merge, BitTree *left, BiTree *right, const void *data)
{

bitree_init(merge, left-destroy);

if(bitree_ins_left (merge, NULL, data) !=0) {

/* Aqui da erro no merge quando executo erro de memoria full */

return;
}

Já procurei isso em vários lugares, e não acho o erro.

--
Atenciosamente

 Cristiano Panvel von Vatsvalen

 Mestre em Física Aplicada à Medicina e Biologia - UFRJ
 Engenheiro Computacional - UNIRIO
-
Histórico: http://www.fug.com.br/historico/html/freebsd/
Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd