Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Third Party Musl
提交
cb81b694
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看板
提交
cb81b694
编写于
4月 19, 2012
作者:
R
Rich Felker
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix really bad breakage in strtol, etc.: failure to accept leading spaces
上级
769d3d34
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
9 addition
and
10 deletion
+9
-10
src/internal/floatscan.c
src/internal/floatscan.c
+3
-2
src/internal/floatscan.h
src/internal/floatscan.h
+1
-1
src/internal/intscan.c
src/internal/intscan.c
+1
-1
src/stdio/vfscanf.c
src/stdio/vfscanf.c
+1
-1
src/stdlib/strtod.c
src/stdlib/strtod.c
+3
-5
未找到文件。
src/internal/floatscan.c
浏览文件 @
cb81b694
...
...
@@ -394,12 +394,13 @@ static long double hexfloat(FILE *f, int bits, int emin, int sign, int pok)
return
scalbnl
(
y
,
e2
);
}
long
double
__floatscan
(
FILE
*
f
,
int
c
,
int
prec
,
int
pok
)
long
double
__floatscan
(
FILE
*
f
,
int
prec
,
int
pok
)
{
int
sign
=
1
;
int
i
;
int
bits
;
int
emin
;
int
c
;
switch
(
prec
)
{
case
0
:
...
...
@@ -418,7 +419,7 @@ long double __floatscan(FILE *f, int c, int prec, int pok)
return
0
;
}
if
(
c
<
0
)
c
=
shgetc
(
f
);
while
(
isspace
((
c
=
shgetc
(
f
)))
);
if
(
c
==
'+'
||
c
==
'-'
)
{
sign
-=
2
*
(
c
==
'-'
);
...
...
src/internal/floatscan.h
浏览文件 @
cb81b694
...
...
@@ -3,6 +3,6 @@
#include <stdio.h>
long
double
__floatscan
(
FILE
*
,
int
,
int
,
int
);
long
double
__floatscan
(
FILE
*
,
int
,
int
);
#endif
src/internal/intscan.c
浏览文件 @
cb81b694
...
...
@@ -32,7 +32,7 @@ unsigned long long __intscan(FILE *f, unsigned base, int pok, unsigned long long
errno
=
EINVAL
;
return
0
;
}
c
=
shgetc
(
f
);
while
(
isspace
((
c
=
shgetc
(
f
)))
);
if
(
c
==
'+'
||
c
==
'-'
)
{
neg
=
-
(
c
==
'-'
);
c
=
shgetc
(
f
);
...
...
src/stdio/vfscanf.c
浏览文件 @
cb81b694
...
...
@@ -291,7 +291,7 @@ int vfscanf(FILE *f, const char *fmt, va_list ap)
case
'e'
:
case
'E'
:
case
'f'
:
case
'F'
:
case
'g'
:
case
'G'
:
y
=
__floatscan
(
f
,
-
1
,
size
,
0
);
y
=
__floatscan
(
f
,
size
,
0
);
if
(
!
shcnt
(
f
))
goto
match_fail
;
if
(
dest
)
switch
(
size
)
{
case
SIZE_def
:
...
...
src/stdlib/strtod.c
浏览文件 @
cb81b694
...
...
@@ -5,16 +5,14 @@
static
long
double
strtox
(
const
char
*
s
,
char
**
p
,
int
prec
)
{
char
*
t
=
(
char
*
)
s
;
while
(
isspace
(
*
t
))
t
++
;
FILE
f
=
{
.
buf
=
(
void
*
)
t
,
.
rpos
=
(
void
*
)
t
,
.
buf
=
(
void
*
)
s
,
.
rpos
=
(
void
*
)
s
,
.
rend
=
(
void
*
)
-
1
,
.
lock
=
-
1
};
shlim
(
&
f
,
0
);
long
double
y
=
__floatscan
(
&
f
,
-
1
,
prec
,
1
);
long
double
y
=
__floatscan
(
&
f
,
prec
,
1
);
off_t
cnt
=
shcnt
(
&
f
);
if
(
p
)
*
p
=
cnt
?
t
+
cnt
:
(
char
*
)
s
;
if
(
p
)
*
p
=
cnt
?
(
char
*
)
s
+
cnt
:
(
char
*
)
s
;
return
y
;
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录