Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

Re: XS hash question

by robsv (Curate)
on May 25, 2001 at 03:27 UTC ( #83169=note: print w/ replies, xml ) Need Help??


in reply to XS hash question

If you want to use hashrefs, and choose to ignore tye's advice (in favor of speed?), you can get also the key values using hv_fetch:

int calculate(hashref) SV * hashref; INIT: HV * myhash; SV **svp; int keylen; CODE: char * name; float theta; myhash = (HV *)SvRV(hashref); svp = hv_fetch(myhash,"NAME",4,0); if (svp) name = SvPV(*svp,keylen); svp = hv_fetch(myhash,"THETA",5,0); if (svp) theta = SvNV(*svp); printf("%s,%.1f\n",name,theta); . . . RETVAL = 1; OUTPUT: RETVAL
If you're determined to use hashes, check out perlguts, and the book "Advanced Perl Programming" by Sriram Srinivasan.

- robsv


Comment on Re: XS hash question
Download Code

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://83169]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (9)
As of 2015-08-31 20:35 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The oldest computer book still on my shelves (or on my digital media) is ...













    Results (364 votes), past polls