=================================================================== RCS file: /home/cvs/OpenXM/src/util/oxreplace.c,v retrieving revision 1.1 retrieving revision 1.8 diff -u -p -r1.1 -r1.8 --- OpenXM/src/util/oxreplace.c 2003/03/26 04:45:37 1.1 +++ OpenXM/src/util/oxreplace.c 2013/08/31 13:44:08 1.8 @@ -1,13 +1,20 @@ -/* $OpenXM$ */ +/* $OpenXM: OpenXM/src/util/oxreplace.c,v 1.7 2011/05/02 06:39:51 takayama Exp $ */ /* cf. fb/src/misc/nan-tfb2.c */ #include +#include +#include #include +int ReplaceLine=0; +int Verbose=0; +void usage(); + char *readAsString(FILE *fp) { static char *s = NULL; static int size= 102400; int p = 0; char *s2; int c; + if (fp == NULL) { s=NULL; return(NULL); } if (s == NULL) { s = (char *) malloc(size); if (s == NULL) { @@ -38,29 +45,78 @@ matches(char *word,char *s,int j) { } return 1; } + +isHexc(int c) { + if ((c >= '0') && (c<='9')) return 1; + if ((c >= 'A') && (c<='F')) return 1; + if ((c >= 'a') && (c<='f')) return 1; + return 0; +} +char *hex2str(char hstr[]) { + int i,n,c,k; + char *s; + char ts[3]; + /* printf("%s\n",hstr); */ + n = strlen(hstr); + s = (char *) malloc(n/2+2); + if (s == NULL) {fprintf(stderr,"Memory exhausted.\n"); exit(10);} + k = 0; i = 0; + s[k] = 0; + while (i