c语言中endl的意义,c – std :: endl的结构

However,how can a function be deprived of parentheses?

函数的名称,而不是(),只是对该函数的引用.它与任何其他类型完全相同:

void foo(int) {}

char x = 'a';

char *p = &x;

int main()

{

p; // Refers to p

*p; // Dereferences p (refers to whatever p points to)

foo; // Refers to foo

foo(42); // Calls foo

}

std :: endl是一个函数(实际上是一个函数模板),它接受一个类型为“a stream”的参数,并通过将EOL表示插入到该流中然后将其刷新来工作.你可以像其他任何函数一样使用它,如果你想:

std::endl(std::cout);

最后一个难题是标准库提供了运算符的重载(同样,模板)<

Stream& operator<< (Stream &s,const Function &f)

{

f(s);

return s;

}

因此,调用std :: cout<< std :: endl调用该操作符重载,后者又调用std :: endl(std :: cout),它执行EOL插入刷新. 至于哪种形式是首选的(直接调用vs.<< operator),它肯定是使用<<.>

std::cout << "Temperature: " << std::fixed << std::setprecision(3) << temperature << " (rounds to " << std::setprecision(1) << temperature << ')' << std::endl;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值