c++笔记20160612

来源:互联网 发布:php和javascript哪个难 编辑:程序博客网 时间:2024/06/15 09:13

1.编译器运行前会先运行预处理器,查找所有预处理指令

2.#include用于包含头文件

     包含c盘下头文件header.h     #include"c:\header.h"

3.#define Num 100

     #dfine   N  1<<2
     当cout<<N;时结果不是4而是cout<<1<<2;
     所以宏定义时不代表左移而是代替而已。
4.#define作用  
                 1. 替字面常量
                            a.  
                                 #define ha 98.5
                                 使用宏只是单纯文本替换,无类型信息。因此在要求类型的地方使用宏有危险性。
                                 针对这种情况要使用符号常量:const double ha 98.5。
                            b.  
                                 #define N 100 对N宏定义
                                 之后对3N 和N7定义                            
                                 #define 3N  3*N  表示将3N定义为3*100即300 
                                 #define N7  N+7  表示将N7定义为100+7即107 

                 2. 替运算符
                                #define ADD +
                                #define OR   ||
                                #define BEGIN {
                                #define END     }
                                #define OUT cout<<
                                     void happy()
                                      {
                                       int a=1;
                                       int b=a  ADD a;
                                       if(a  OR   b)  OUT "happy is easy!";
                                      }

                 3. 声明 符号(宏名称) 
                                      #define ok   /* 只进行声明不定义*/
                                                        宏:一种批量批处理的称谓,宏是一种规则或模式,或称语法换。



以下是宏定义带参函数

#include<iostream>using namespace std;#define  COMPARE(a,b) if(a>b)cout<<a<<"   is  bigger";\else  cout<<b<<"更大(后者)"; int main(){int a=3,b=4;COMPARE(a,b)}

注意事项:

/*

1   定义带参数的宏,名称和传参括号之间不能有空格

2  才如果定义的文本一行写不完就在后面添加 “\“宏定义的最后一行后面不添加  ”\ ”符号

3   在文本内使用注释不能使用双划线格式,需要用/**/,否则会被当做文本体

 */


0 0
原创粉丝点击