Rather than trying to reinvent the wheel, why not make use of the
functions documented in Writing R Extensions, especially Calloc/Free?
And definitely do not call exit() from code linked into R: it is
antisocial behaviour to terminate your host's process.
Your example is incomplete, and for some values of 'col' you will run out
of memory. (It is also not legal C as written, since you mix code and
declarations.)
On Thu, 29 Dec 2005, Marcelo Damasceno wrote:
Hi all,
I have a C code in Linux, it has 7 pointers and compile e run OK, but when I
run in R happens problems with calloc function, it returns NULL.
###############################################
int *temp1,*temp2,*temp3,*temp4;
temp1 = (int *)calloc(col,sizeof(int));
if(temp1 == NULL){
printf("\n\n No Memory1!");
exit(1);
}
temp2 = (int *)calloc(col,sizeof(int));
if(temp2 == NULL){
>printf("\n\n No Memory2!");
>exit(1);
}
temp3 = (int *)calloc(col,sizeof(int));
if(temp3 == NULL){
>printf("\n\n No Memory3!");
>exit(1);
}
temp4 = (int *)calloc(col,sizeof(int));
if(temp4 == NULL){
printf("\n\n No Memory4!");
exit(1);
}
int *cvector;
cvector = (int *)calloc(col,sizeof(int));
if(cvector == NULL){
printf("\n\n No Memory5!");
exit(1);
}
tam=ntam;
int **matrix;
matrix=(int**)calloc(row,sizeof(int*));
if(matrix == NULL){
printf("\n\n No Memory6!");
exit(1);
}
temp=(int*)calloc(tam,sizeof(int));
if(temp == NULL){
printf("\n\n No Memory7!");
exit(1);
}
iia = (int *)calloc(row-1,sizeof(int));
if(iia == NULL){
printf("\n\n No Memory8!");
exit(1);
}
iib = (int *)calloc(row-1,sizeof(int));
if(iib == NULL){
printf("\n\n No Memory9!");
exit(1);
}
############################################
In output !
No Memory5!
[EMAIL PROTECTED] home] $
What's wrong?
Thanks!
--
Marcelo Damasceno de Melo
Graduando em Ciência da Computação
Departamento de Tecnologia da Informação - TCI
Universidade Federal de Alagoas - UFAL
Maceió - Alagoas - Brasil
Projeto CoCADa - Construção do Conhecimento por Agrupamento de dados
+55 82 8801-2119
[[alternative HTML version deleted]]
--
Brian D. Ripley, [EMAIL PROTECTED]
Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
University of Oxford, Tel: +44 1865 272861 (self)
1 South Parks Road, +44 1865 272866 (PA)
Oxford OX1 3TG, UK Fax: +44 1865 272595
______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel