sscanf Modifier%Fd扫描的是什么类型?

Jac*_*ack 1 c windows scanf visual-studio

我遇到了一些具有以下类型行的遗留代码:

sscanf(szBuff,"%Fd%Ff%Fd%Ff"

有没有人看到像Fd或Ff这样的修饰符?如果是这样,这是什么意思?

我似乎无法找到任何相关信息.代码编译并运行正常.

oua*_*uah 6

C说fscanf功能:

(C99 1,7.19.6.2p14)转换标识符A,E,F,G和X也是有效的和行为相同,分别为A,E,F,G和x.

因此%Fd,转换规范%F相当于%f.请注意,d它不是转换规范的一部分.

例如(对于fprintf函数%F也是一样的%f):

printf("%fd\n", 3.141592);
Run Code Online (Sandbox Code Playgroud)

将打印:

3.141592d
Run Code Online (Sandbox Code Playgroud)


1. C89/C90无法识别F转换说明符.例如,对于fscanf7.9.6.2中相应的C90段落说:转换说明符E,G和X也是有效的,其行为分别与e,g和x相同