【发布时间】:2013-10-15 06:53:48
【问题描述】:
在 C++ 中使用的头文件没有 .h 扩展名,如 <iostream> 而不是 <iostream.h>,但在 <conio.h> 的情况下则不同。为什么我们不能使用<conio>
【问题讨论】:
标签: c++ include c-preprocessor preprocessor-directive conio
在 C++ 中使用的头文件没有 .h 扩展名,如 <iostream> 而不是 <iostream.h>,但在 <conio.h> 的情况下则不同。为什么我们不能使用<conio>
【问题讨论】:
标签: c++ include c-preprocessor preprocessor-directive conio
C++ 标准指定哪些头文件是 C++ 标准库的一部分。除了 C++ 特定的头文件外,它还包括 C 标准指定的头文件。您可以将它们与它们的 C 名称一起使用(例如,#include <stdio.h>),并将它们的符号放入全局命名空间中。您可以在没有.h 扩展名和前面的c(例如#include <cstdio>)的情况下使用它们,并将它们的符号放入命名空间std。
但这仅适用于 C 标准的标头。 conio.h 不是 C 标准的一部分,因此 C++ 标准没有说明任何内容。
【讨论】:
conio.h 是 C 标头,因此(传统上)C 标头具有系统标头的 .h 扩展名。 C++ 标准头文件主要没有这个 .h 扩展名。您可能知道,许多 C 头文件(来自标准库的头文件)都有 C++ 对应的头文件(就像在 C++ 中一样)
【讨论】:
因为conio.h 是 C 头文件,而不是 C++ 特定的。
【讨论】:
conio 不是 c++ 标准的一部分,因此您不能指望编译器知道它是什么。 :(
其实我觉得一般只有windows下才支持。
【讨论】: