hstr_i.c
来自「国外网站上的一些精典的C程序」· C语言 代码 · 共 52 行
C
52 行
/*** Originally published as part of the MicroFirm Function Library**** Copyright 1986, S.E. Margison** Copyright 1989, Robert B.Stout**** The user is granted a free limited license to use this source file** to create royalty-free programs, subject to the terms of the** license restrictions specified in the LICENSE.MFL file.**** Make an ascii hexadecimal string into an integer.*/#include <stdio.h>#include <ctype.h>#include "numcnvrt.h"unsigned int hstr_i(char *cptr){ unsigned int i, j = 0; while (cptr && *cptr && isxdigit(*cptr)) { i = *cptr++ - '0'; if (9 < i) i -= 7; j <<= 4; j |= (i & 0x0f); } return(j);}#ifdef TEST#include <stdio.h>#include <stdlib.h>int main(int argc, char *argv[]){ char *arg; unsigned int x; while (--argc) { x = hstr_i(arg = *++argv); printf("Hex %s = %d\n", arg, x, x); } return EXIT_SUCCESS;}#endif /* TEST */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?