在所有的预处理指令中,#Pragma指令可能是最复杂的了,它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作。#pragma指令对每个编译器给出了一个方法,在保持与C和C++语言完全兼容的情况下,给出主机或操作系统专有的特征。依据定义,编译指示是机器或操作系统专有的,且对于每个编译器都是不同的。
1. #pragma message
e.g. #pragma message("hello ubuntu") //当编译器编译到这句的时候,会在输出窗口打印message的内容。
2. #pragma once
若使用在头文件的前面,可以使其只被编译一次。
3. #pragma hdrstop
该指令表示编译头文件到此为止,后面的无需在进行编译了。
这个东西我没用过, 也不知道怎么用,以后加以补充。
4. #pragma warning(disable:M N;once:H;error:K)
表示不显示M和N号的警告信息,H号警告信息只报告一次,把K号警告信息作为一个错误来处理。
5. #pragma code_seg(["section-name"[,"section-class"] ] )
它能够设置程序中函数代码存放的代码段,当我们开发驱动程序的时候就会使用到它。