Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Third Party Musl
提交
b7d32101
T
Third Party Musl
项目概览
OpenHarmony
/
Third Party Musl
1 年多 前同步成功
通知
37
Star
125
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
Third Party Musl
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
b7d32101
编写于
10月 29, 2013
作者:
S
Szabolcs Nagy
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
POSIX conformance fix: define struct entry in search.h
上级
7e01b8f0
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
9 addition
and
9 deletion
+9
-9
include/search.h
include/search.h
+1
-1
src/search/hsearch.c
src/search/hsearch.c
+8
-8
未找到文件。
include/search.h
浏览文件 @
b7d32101
...
...
@@ -13,7 +13,7 @@ extern "C" {
typedef
enum
{
FIND
,
ENTER
}
ACTION
;
typedef
enum
{
preorder
,
postorder
,
endorder
,
leaf
}
VISIT
;
typedef
struct
{
typedef
struct
entry
{
char
*
key
;
void
*
data
;
}
ENTRY
;
...
...
src/search/hsearch.c
浏览文件 @
b7d32101
...
...
@@ -14,14 +14,14 @@ with the posix api items cannot be iterated and length cannot be queried
#define MINSIZE 8
#define MAXSIZE ((size_t)-1/2 + 1)
struct
e
ntry
{
struct
e
lem
{
ENTRY
item
;
size_t
hash
;
};
static
size_t
mask
;
static
size_t
used
;
static
struct
e
ntry
*
tab
;
static
struct
e
lem
*
tab
;
static
size_t
keyhash
(
char
*
k
)
{
...
...
@@ -37,9 +37,9 @@ static int resize(size_t nel)
{
size_t
newsize
;
size_t
i
,
j
;
struct
e
ntry
*
e
,
*
newe
;
struct
e
ntry
*
oldtab
=
tab
;
struct
e
ntry
*
oldend
=
tab
+
mask
+
1
;
struct
e
lem
*
e
,
*
newe
;
struct
e
lem
*
oldtab
=
tab
;
struct
e
lem
*
oldend
=
tab
+
mask
+
1
;
if
(
nel
>
MAXSIZE
)
nel
=
MAXSIZE
;
...
...
@@ -81,10 +81,10 @@ void hdestroy(void)
used
=
0
;
}
static
struct
e
ntry
*
lookup
(
char
*
key
,
size_t
hash
)
static
struct
e
lem
*
lookup
(
char
*
key
,
size_t
hash
)
{
size_t
i
,
j
;
struct
e
ntry
*
e
;
struct
e
lem
*
e
;
for
(
i
=
hash
,
j
=
1
;
;
i
+=
j
++
)
{
e
=
tab
+
(
i
&
mask
);
...
...
@@ -98,7 +98,7 @@ static struct entry *lookup(char *key, size_t hash)
ENTRY
*
hsearch
(
ENTRY
item
,
ACTION
action
)
{
size_t
hash
=
keyhash
(
item
.
key
);
struct
e
ntry
*
e
=
lookup
(
item
.
key
,
hash
);
struct
e
lem
*
e
=
lookup
(
item
.
key
,
hash
);
if
(
e
->
item
.
key
)
return
&
e
->
item
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录