use strict; my @string = qw(a a b h a g s j s z u u e); my $n=@string; my $str = join('',@string); my @a = Suff($str,$n); foreach (@a){ print "@string[$_..$n]\n"; } use Inline C => <<'END_C'; #include #include #include #include void Suff(char* array,int n){ int i; char **sarray; sarray = (char **)malloc(n * sizeof(char *)); char *string; string = savepv(array); for(i=0;i