在 C++ 中使用 cout 输出 printf [关闭]

问题描述 投票:0回答:1

请解释为什么要打印 5? 还要说明程序流程。

#include<iostream>
using namespace std;
int main() {
    double x = 1;
    cout << printf("%.2f\n", x);
    return 0;
}

输出:

1.00

5

c++ floating-point printf cout function-call
1个回答
2
投票

来自 C 标准(7.21.6.3 printf 函数)

3 printf函数返回传输的字符数,或者 如果发生输出或编码错误,则为负值。

printf 的这个调用

printf("%.2f\n", x)

在控制台输出以下字符(显示为字符串)

"1.00\n"

5
字符包括换行符
'\n'
。根据 C 标准的引用,调用的返回值为
5
。并且这个值是使用运算符
<<
为标准输出 C++ 流
std::cout
.

输出的
© www.soinside.com 2019 - 2024. All rights reserved.