龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > C/C++开发 >

常用C/C++预处理指令详解(2)

时间:2014-11-14 11:54来源:网络整理 作者:网络 点击:
分享到:
复制代码 代码如下: #pragma message("消息文本") code_seg参数:设置程序中函数代码存放的代码段,当我们开发驱动程序的时候就会使用到它 复制代码 代码如下

复制代码 代码如下:
#pragma message("消息文本")

code_seg参数:设置程序中函数代码存放的代码段,当我们开发驱动程序的时候就会使用到它

复制代码 代码如下:
#pragma code_seg(["section-name"[,"section-class"]])

#pragma once:

  只要在头文件的最开始加入这条指令就能够保证头文件被编译一次,但移植性差。如果写的程序要跨平台,最好使用C++中的宏定义。

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

#pragma resource:

复制代码 代码如下:
#pragma resource "winform.dfm"

表示把winform.dfm文件中的资源加入工程,winform.dfm中包括窗体外观的定义。

#pragma warning:输出警告信息。

我们运行一下程序:

复制代码 代码如下:

int main()
{
    float f=3.6;
    int i=f;
    cout<<i<<endl;
    system("pause");
    return 0;
}

会出现如下警告信息:

复制代码 代码如下:
1>ClCompile:1>f.cpp1>c:\users\gaohongchen\desktop\45\5\5\f.cpp(12): warning C4305: “初始化”: 从“double”到“float”截断1>c:\users\gaohongchen\desktop\45\5\5\f.cpp(13): warning C4244: “初始化”: 从“float”转换到“int”,可能丢失数据

若我们在程序上方添加:

复制代码 代码如下:
#pragma warning(disable:4305)

则编译时警告信息会变为:

复制代码 代码如下:

1>ClCompile:
1>f.cpp
1>c:\users\gaohongchen\desktop\45\5\5\f.cpp(12): warning C4305: “初始化”: 从“double”到“float”截断
1>c:\users\gaohongchen\desktop\45\5\5\f.cpp(13): warning C4244: “初始化”: 从“float”转换到“int”,可能丢失数据

若我们在程序上方添加:

复制代码 代码如下:
#pragma warning(error:4244)

则警告信息会变为错误信息:

复制代码 代码如下:

1>ClCompile:
1>f.cpp
1>c:\users\gaohongchen\desktop\45\5\5\f.cpp(13): warning C4244: “初始化”: 从“float”转换到“int”,可能丢失数据

#pragma comment:该指令将一个注释记录放入一个对象文件或可执行文件中。

  常用的lib关键字,可以帮我们连入一个库文件。例如:

复制代码 代码如下:
#pragma comment(lib,"wsock32.lib")

#pragma disable:在函数前声明,只对一个函数有效。该函数调用过程中将不可被中断。一般在C51中使用较多。

精彩图集

赞助商链接