Em 26 de agosto de 2011 15:39, Benilton Carvalho
<beniltoncarvalho@gmail.com> escreveu:
Exato, o .Call() oferece uma melhor interface com o R e tambem permite
que vc retorne objetos para o R. O lance do PROTECT() e' pq o R possui
um sistema de "garbage collection", entao se vc nao proteger a sua
variavel em C (via .Call) o R vai acabar "limpando" o espaco de
memoria usado pelo C e coisas inesperadas vao acontecer.
O legal de usar .C(), como eu comentei anteriormente e voce notou, e'
que voce pode fazer seu programa C independente do R... dai', se for
usar com o R, e' apenas dar-se ao trabalho de criar uma funcaozinha
que receba os ponteiros do R e passe os argumentos apropriados para a
funcao C.