#!/usr/bin/perl -w use strict; use Inline qw(C); use Data::Dumper; my $n = factrl(1000); print "$n\n"; __END__ __C__ /* Here I attempt to increase the size of variable with malloc such that it can handle BIG number But is there anything wrong with it? */ typedef (malloc(2*sizeof(long double))) Big_Double; Big_Double factrl; /* Code below is to compute factorial */ double factrl(int n) { double gammln(double xx); void nerror(char error_text[]); static int ntop=4; static double a[33]={1.0,1.0,2.0,6.0,24.0}; int j; if (n<0) nerror("Negative factorial in routine factrl"); if (n>32) return exp(gammln(n+1.0)); while (ntop