C++ #include<&燃气轮机;和“定义”&引用;
有人能告诉我#include和#define之间的区别吗..我知道#include用于包含头文件而#define用于定义宏或常量..它们一点都不相似吗C++ #include<&燃气轮机;和“定义”&引用;,c++,C++,有人能告诉我#include和#define之间的区别吗..我知道#include用于包含头文件而#define用于定义宏或常量..它们一点都不相似吗 #include"abc.h" #define "abc.h" int main() { cout<<"Hello"; return 1; } #包括“abc.h” #定义“abc.h” int main() { cout#include如您所说,用于在实际编译之前包含文件 #define用于定义宏。该宏在编译之前被其值替换 如果
#include"abc.h"
#define "abc.h"
int main()
{
cout<<"Hello";
return 1;
}
#包括“abc.h”
#定义“abc.h”
int main()
{
cout#include
如您所说,用于在实际编译之前包含文件
#define
用于定义宏。该宏在编译之前被其值替换
如果您编写#定义最大值10
然后在编译之前,所有出现的“max”将被数字10替换
此外,您应该参考。相似之处
它们都是C++的部分。
- 他们都是从C
- 它们都是由预处理器实现的,预处理器将源代码转换为编译器
- 它们都以
#
开头
- 它们都包含一个英语单词
- 它们都以小写形式呈现
- 它们都用于您的[断开的]示例代码中
分歧
- 他们做什么。
#包含
包含事物
#定义
定义事物
- 它们在您的[Breaked]示例代码中的正确性。
- 您的
#include
用法正确
- 您的
#define
用法不正确
当您已经知道差异时,还有什么要说的呢?区别在于,除了两者都称为预处理器指令外,没有任何关系。#include用于包含头文件。相反,#define用于定义宏(特别是,它们可以表示代码中的常量,尽管不建议使用)<代码> >定义“文本”<代码>是语法错误。FFS,编译您发布的代码。此外, Valuemain < /Calp>无效。@ DaN:不,这是错误的。在C++中, Valuemain < /C>总是不正确,不管您的编译器是否接受它。(除非您的程序是在独立环境中运行的,在这种情况下,可能会忽略此主函数,我想您是在用另一个函数替换它。)[C++11:3.6.1/2]:
“一个实现不应预定义主函数。此函数不应重载。它的返回类型应为int
,否则其类型是实现定义的。”为什么会被否决?这是对一个完全错误的问题的完全正确的回答