#include<>之间的区别是什么?和#define“”

时间:2013-06-26 09:05:12

标签: c++

有人可以告诉我#include<>之间的区别和#define ..我知道#include<>用于包含头文件,#define用于定义宏或常量。它们是否完全不相似?

#include"abc.h"
#define "abc.h"
int main()
{
cout<<"Hello";
return 1;

}

2 个答案:

答案 0 :(得分:9)

相似性

  • 它们都是C ++的一部分。
  • 他们都是从C继承的。
  • 它们都是由预处理器实现的,它将源代码转换为编译器。
  • 他们都以#开头。
  • 它们都包含英文单词。
  • 它们都是小写的。
  • 它们都用在[破损]示例代码中。

差异

  • 他们做了什么。
    • #include包含内容
    • #define定义了一些内容
  • 你的[破碎]示例代码中的错误程度如何。
    • 您的#include用法正确
    • 您的#define使用不正确

答案 1 :(得分:4)

如你所说的

#include用于在实际编译之前包含一个文件。

#define用于定义宏......在编译之前由其值替换

如果你写#define max 10 然后就在编译之前,所有“max”的出现都会被数字10 ...

取代

此外,您应该参考this Wikipedia article on the C preprocessor