Alright, 
I'm guessing that my version of perl was not compiled to support
64 bit integers, because when I use pack with "q" or "Q" I get
the error message:
Invalid type for pack: "q", or "Q"

Then, I tried to use SvTYPE to see what kind of SV it
was recieving:

  my $list = pack( 'n*',(65,66,67,68,69) );
  #printf "%vd\n",$list;

  cLinePlot(\$list,\$list,5);

  __DATA__
  __C__
  void cLinePlot(SV* x, SV* y, int els) {

     SV* tmpX;

     printf("hey in C\n");
     //tmpX = SvRV(x);
     printf("type of x=%d\n",SvTYPE(SvRV(x)));
  }

This resulted in: "type of x=4" which according to the following
http:[EMAIL PROTECTED]/msg00445.html
represents a SVt_PV (String, right?)

Any ideas why this would come across as a string?

Thanks...Brady

-----Original Message-----
From: Elizabeth Mattijsen [mailto:[EMAIL PROTECTED]]
Sent: Wednesday, June 12, 2002 6:01 AM
To: Nicholas Clark
Cc: bbcannon; '[EMAIL PROTECTED]'
Subject: Re: Instantiating arrays with Inline


At 12:29 PM 6/12/02 +0100, Nicholas Clark wrote:
>On Wed, Jun 12, 2002 at 10:37:37AM +0200, Elizabeth Mattijsen wrote:
> > At 05:30 PM 6/11/02 -0600, bbcannon wrote:
> > >My initial try with "V" did not work, but I'm going to
> > >keep pecking at it.  If a double is represented in C with
> > >32 bits...
> > I'm assuming that.  It may not always be true.  I've been lead to
> > understand that some compilers for 64bit processors consider a double 
> to be
> > 64 bit.
>I think it's never true. I've never known float to be anything but 32 bits,
>and double to be anything but 64 bits on any system I've used, nearly all
>of which have int and long both as 32 bits.
>However, I'd not be surprised if float was 64 bits on Crays.

That just goes to show how rusty my C is...  ;-)


Liz

Reply via email to