-5
  1. 第一个代码
#include <studio.h>

int main() {
    std::cout << "apple" << endl << "banana";
}
  1. 第二个代码
#include <iostream>
using namespace std;

int main(void) {
    cout << "apple" << endl;
    cout << "banana" << endl;
}

为什么我错了?我知道答案是第二个,但我想知道为什么我的第一个代码是错误的。请帮我!

4

3 回答 3

8

第一个代码是错误的,因为#include <studio.h>是错误的头文件。std::cout和的正确头文件std::endl#include <iostream>.

这也是错误的,因为endl它在std::名称空间中。因此,即使使用正确的头文件,它也应该是std::endl

std::cout << "apple" << std::endl << "banana";
于 2021-02-04T07:06:00.283 回答
0

在第一种情况下,您忘记将std::放在endl之前。

于 2021-02-04T07:10:38.167 回答
0

看看文档:https ://en.cppreference.com/w/cpp/io/manip/endl

如您所见,有两件重要的事情与您发布的错误/问题有关:

  1. endl在标题中定义<ostream>
  2. 它在命名空间中std

因此必须使用它作为std::endl 注意,ostream 是 iostream 的父级,因此包括 iostream 保证您可以访问 ostream

在此处输入图像描述

于 2021-02-04T07:34:50.497 回答