my $dd = "hello world\n"; printf("the dd string address is %x \n", cc($dd)); use Inline 'C' => <<'CODE'; unsigned int cc(SV* a){ 40 return SvPVX(a); 41 } 42 CODE # just print the dd string address is 8d8b8e90, the upper 4bytes of the address was truncated.