Mingw 4.8.2是否支持' #pragma曾经'

时间:2015-02-27 19:09:53

标签: gcc mingw

我目前有以下mingw

gcc --version
gcc (x86_64-win32-seh-rev3, Built by MinGW-W64 project) 4.8.2
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

我的问题是Mingw支持#pragma关键字,是否支持#pragma once

1 个答案:

答案 0 :(得分:2)

真正的问题是gcc(MinGW系统的编译器部分)是否支持#pragma once

答案是肯定的。 #pragma功能实际上由gcc使用的C预处理器支持,单独记录。 Gnu CPP对#pragma once的实施是described here。根据系统的配置方式,您可以通过键入info cpp并搜索#pragma once来在系统上阅读此内容。

但是,我不建议使用#pragma once。它没有由C标准指定,因此它不能移植到其他编译器。除非您可以保证您的代码永远不需要由不支持#pragma once的编译器编译,否则您可能最好使用传统的#ifndef方法,称为“包含保护” ,在previous section of the same manual中描述。