RT-Thread RTOS 1.2.0
An open source embedded real-time operating system
载入中...
搜索中...
未找到
msh_parse.h 文件参考
#include <rtdef.h>
+ msh_parse.h 的引用(Include)关系图:

浏览该文件的源代码.

函数

rt_bool_t msh_isint (char *strvalue)
 
rt_bool_t msh_ishex (char *strvalue)
 
int msh_strtohex (char *strvalue)
 

函数说明

◆ msh_isint()

rt_bool_t msh_isint ( char * strvalue)

This function will check integer.

参数
strvaluestring
返回
true or false

在文件 msh_parse.c23 行定义.

24{
25 if ((RT_NULL == strvalue) || ('\0' == strvalue[0]))
26 {
27 return RT_FALSE;
28 }
29 if (('+' == *strvalue) || ('-' == *strvalue))
30 {
31 strvalue++;
32 }
33 forstrloop(strvalue)
34 {
35 if (!isdigit((int)(*strvalue)))
36 {
37 return RT_FALSE;
38 }
39 }
40 return RT_TRUE;
41}
#define forstrloop(str)
#define RT_TRUE
#define RT_FALSE
#define RT_NULL

引用了 forstrloop, RT_FALSE, RT_NULL , 以及 RT_TRUE.

◆ msh_ishex()

rt_bool_t msh_ishex ( char * strvalue)

This function will check hex.

参数
strvaluestring
返回
true or false

在文件 msh_parse.c50 行定义.

51{
52 int c;
53 if ((RT_NULL == strvalue) || ('\0' == strvalue[0]))
54 {
55 return RT_FALSE;
56 }
57 if ('0' != *(strvalue++))
58 {
59 return RT_FALSE;
60 }
61 if ('x' != *(strvalue++))
62 {
63 return RT_FALSE;
64 }
65
66 forstrloop(strvalue)
67 {
68 c = tolower(*strvalue);
69 if (!isxdigit(c))
70 {
71 return RT_FALSE;
72 }
73 }
74 return RT_TRUE;
75}

引用了 forstrloop, RT_FALSE, RT_NULL , 以及 RT_TRUE.

◆ msh_strtohex()

int msh_strtohex ( char * strvalue)

This function will transform for string to hex.

参数
strvaluestring
返回
integer transformed from string

在文件 msh_parse.c84 行定义.

85{
86 char c = 0;
87 int value = 0;
88 strvalue += 2;
89 forstrloop(strvalue)
90 {
91 value *= 16;
92 c = tolower(*strvalue);
93 value += isdigit(c) ? c - '0' : c - 'a' + 10;
94 }
95 return value;
96}

引用了 forstrloop.