0

使用 cstdio 标头的双重 C++ 代码。

#include <cstdio>
    using namespace std;
    
    int main() {
    
            double f;
            scanf("%lf",&f);
            printf("%lf",f);
            
            return 0;
    }

此代码始终输出 0.000000。为什么?但类似的代码在 C 中运行良好

#include<stdio.h>

    int main() {
            double f;
            scanf("%lf",&f);
            printf("%lf",f);
            return 0;
    }

此代码工作正常。

4

1 回答 1

1

阅读fscanfand的文档fprintf(尤其是转换说明符,它们不同)并删除using namespace std.

于 2016-11-12T13:23:24.353 回答