#pragma简介及常见用法

在#Pragma 是预处理指令它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作。

#pragma 指令对每个编译器给出了一个方法,在保持与 C 和 C ++语言完全兼容的情况下,给出主机或操作系统专有的特征。依据定义,编译指示是机器或操作系统专有的,且对于每个编译器都是不同的。


其格式一般为: #Pragma Para

其中Para为参数,下面来看一些常用的参数。

(1)#Pragma message

Message参数能够在编译信息输出窗口中输出相应的信息,这对于源代码信息的控制是非常重要的。

其使用方法为:#Pragma message(“消息文本”)当编译器遇到这条指令时就在编译输出窗口中将消息文本打印出来。

当我们在程序中定义了许多宏来控制源代码版本的时候,我们自己有可能都会忘记有没有正确的设置这些宏,此时我们可以用这条指令在编译的时候就进行检查。


(2)#pragma code_seg。

格式如:

#pragma code_seg([\section-name\[,\section-class\]])

它能够设置程序中函数代码存放的代码段,使用没有 section-name 字符串的#pragmacode_seg 可在编译开始时将其复位,当我们开发驱动程序的时候就会使用到它。


(3)#pragma once

比较常用,只要在头文件的最开始加入这条指令就能够保证头文件被编译一次


(4)#pragma hdrstop

表示预编译头文件到此为止,后面的头文件不进行预编译。


(5) #pragma warning(disable : 4507 34; once : 4385; error : 164)

等价于:

<span style="font-size:14px;">#pragma warning(disable:4507 34) //不显示4507和34号警告信息

#pragma warning(once:4385) //4385号警告信息仅报告一次

#pragma warning(error:164) //把164号警告信息作为一个错误。</span>



(6) pragma comment(...)

该指令将一个注释记录放入一个对象文件或可执行文件中。常用的 lib 关键字,可以帮我们连入一个库文件。


(7)#pragma region

使用#pragma region和#pragma endregion关键字,来定义可以扩展和收缩的代码区域的开头和结尾。

#pragma region A

....

....

...

#pragma endregion





更多用法详见:

http://wenku.baidu.com/link?url=JofbofZF51gQf_zG5tp5jEI7LYMUJWg-ulhUBUV25_lMwilExrD9Jh6r2W2g0pnriR5CKRoaqKjYqbqDKI-uxelC2VJBT9hYP1fJYIsKOiW

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值