C++ 快速输入和输出

C++ 快速输入和输出

在竞技编程中,快速执行和输入输出非常重要。有时候我们只需要输入数组中的五个数字,而有时候可能需要输入1万个数字。这些都是快速输入输出的场景。

C++ 快速输入和输出

现在让我们讨论一些有益的提示,有助于避免TLE –

  • 对于输入一个值,C++的一般格式是 – std::cin>>x; // x是要输入的值 cin适用于一系列的输入,但使用起来很方便 – scanf(“%d”, &x); // x是要输入的值 类似地,对于在控制台上打印我们使用 – std::cout < cout对于有限的数字也很好用,最好的做法是使用 – **printf(“%d”, x); // x是要打印的值
  • 要获得与scanf/printf相同的速度,加上下面的代码到主函数中 – ios_base::sync_with_stdio(false) – 当在程序中的cin/cout之前调用时,它切换所有C++与它们各自的C流的同步。我们将此函数设置为false(之前为true),以避免任何同步。 cin.tie(NULL) – 这个函数可以在取任何输入之前清空所有的std::cout。在交互式控制台程序中非常有用,其中控制台定期更新,但对于较大的值会减慢程序的速度。NULL指向空指针。
  • 包含一个包含所有其他库的头文件。这是GNU C++库的标准头文件。包含下面的头文件可以节省时间和为数据结构添加特定库的努力。例如,对于声明一个map,我们需要一个头文件。这样可以减少额外的努力,也节省时间。 #include 这是应用这些建议的常见C++程序模板的样子:
#include  // GNU header 
using namespace std;
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(NULL); // flushes cout
    return 0;
}
  • 建议使用”\n”来换行,而不是使用endl。 “\n” – 换行 endl – 换行并刷新流 因此, **cout <<endl = cout<< “\n” << flush **

“\n”和endl之间的区别

endl \n
操纵符 字符
不占用内存 占用1字节的内存
endl是一个关键字,因此存储在字符串中时不会发挥作用 \n可以存储在字符串中
仅由C++支持 两者都支持

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程