00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 #include <string.h>
00032
00033 static char* alpha_utils_cxx_sccs_id="$Id: alphautils.cxx,v 1.2 2008/03/04 00:51:09 plankowner Exp $";
00034
00035 static char* alphaTable[] ={
00036 "0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F",
00037 "G","H","J","K","L","M","N","P","Q","R","S","T","U","V","W","X","Y","Z",
00038 (char*)0
00039 };
00040
00041 static int max_index=0;
00042
00043
00044 static void calcMaxIndex(){
00045 int ix=0;
00046 while(alphaTable[ix+1] != (char*) 0 ){
00047 ix++;
00048 }
00049 max_index=ix;
00050 }
00051
00052 char * itoan(int ix){
00053 if ( max_index == 0 )
00054 calcMaxIndex();
00055 if ( ix < 0 ) return "0";
00056 if ( ix > max_index ) return "Z";
00057
00058 return alphaTable[ix];
00059 }
00060
00061 int antoi(char *s){
00062 int ix;
00063
00064 if ( max_index == 0 )
00065 calcMaxIndex();
00066
00067 for(ix=0;ix<=max_index;ix++){
00068 if ( strcmp(s,alphaTable[ix])==0)
00069 return ix;
00070 }
00071 return 0;
00072
00073 }
00074