Ok, try this. It looks perfect to me on UNIX.
use Regexp::Common qw/comment/;
local $/;
$_ = <DATA>;
s/(^[ \t]*$RE{comment}{C}\n|$RE{comment}{C})//gm;
print;
__DATA__
/*This is a bogus function*/
void function foo(void) /*My function is the best*/
{
int i; /*i is an integer*/
int j; /*j is also an integer*/
/*Now I'm going to set i to 1*/
i = 1;
/*Also j*/
j = 1;
/*Here's some incrementing!*/
i++;
/*And more!*/
j++;
/*The end!*/}
__OUTPUT__
void function foo(void)
{
int i;
int j;
i = 1;
j = 1;
i++;
j++;
}