检查输入是否为标准输入流
Checking if input is standard input - istream
给定以下简单函数声明:
void foo (std::istream& is);
我可以用几种方式调用foo,例如:
fstream f;
foo(std::cin);
foo(f);
有没有什么方法可以检查给定的istream&是标准输入吗?(STD::CIN)
提前感谢
您可以使用if语句进行检查
void foo (std::istream& is)
{
if(is==std::cin)
{
std::cout<<"standard input"<< std::endl;
}
else
{
std::cout<<"file input"<< std::endl;
}
}
相关文章:
- 如何忽略输入流中的某些字符?
- 从标准输入读取文件后读取用户输入
- 如何从标准输入中检测格式化输入错误?
- C++ - 标准输入环路
- 如果我从流中提取某些内容,该流是否不再包含我提取的内容?
- 为什么复制构造函数不需要检查输入对象是否指向自身?
- 流对象来表示文件输入,然后是标准输入?
- 是否可以从标准输入指向指针的地址
- CIN是否将输入流中的无效字符取用
- 检查是否为输入流设置了Skipws/noskipws标志
- 提升输入流错误.如何将标准:矢量的动态矢量另存为 XML 文件
- 标准C++输入输出流必须如何处理intXX_t类型
- CLion 会自动从标准输入打印回输入,是否有任何解决方法
- 是否可以从输入流中'throw away'读取值?
- 检查输入是否为标准输入流
- 是否可以使用输入流读取无穷大或NaN值
- boost::精神与非标准(非字符串)输入流
- 使用标准输入流会导致编译失败
- 通过LINUX上的标准输入流检测箭头键
- 如何从标准输入流中解析用户输入