[Rd] string comparison
Kjell Konis
kjell.konis at epfl.ch
Thu Aug 7 16:03:15 CEST 2008
Hi,
I have a package where I do things like this a lot:
if(strncmp(CHAR(asChar(Scategory)), "chance", 6) == 0)
category = h_category_chance;
else if(strncmp(CHAR(asChar(Scategory)), "utility", 7) == 0)
category = h_category_utility;
else if(strncmp(CHAR(asChar(Scategory)), "decision", 8) == 0)
category = h_category_decision;
else if(strncmp(CHAR(asChar(Scategory)), "instance", 8) == 0)
category = h_category_instance;
else
category = h_category_error;
I would like to replace the strncmps with pointer comparisons so I set
up some global variables in the R_init_myDLL function like this:
charChance = install("chance")
<etc.>
but I can't seem to get the comparison to work. I want to do something
like
if(CHAR(asChar(Scategory)) == charChance)
category = h_category_chance;
but category always ends up being h_category_error. Any pointers would
be appreciated.
Thanks,
Kjell
More information about the R-devel
mailing list