c – 如何处理“intrin.h:没有这样的文件或目录”?

#include <intrin.h>

以上将报告:

intrin.h: No such file or directory

哪个似乎是一个MSVC头文件,但是我使用eclipse cdt,我该如何使它可用?是否需要一些库?

cdt使用MinGW编译,但是没有intrin.h:

D:\Tools\MinGW\lib\gcc\mingw32\3.4.5\include>dir *intrin.h

2006-01-17  21:47            34,528 emmintrin.h
2006-01-17  21:47            22,281 mmintrin.h
2006-01-17  21:47             3,586 pmmintrin.h
2006-01-17  21:47            30,925 xmmintrin.h

有人可以帮忙吗?

解决方法

这是一个标题,它声明一堆“内在函数” – 内置到编译器中的函数,因此可以为它们发布内联代码.如果你使用VC作为编译器,它应该在与其他标准头文件相同的目录中.如果您使用的是不同的编译器,则需要更改内部函数以适合您正在使用的编译器.例如,gcc具有很多类似的内在函数,但名称稍有不同.

编辑:鉴于您使用MinGW(即,gcc),您几乎不得不移植代码(或使用VC).如果你正在处理相当少的代码,一种方法是注释掉包含该标题的行,并尝试编译它.编译器将指出使用gcc没有内在函数错误.然后,您可以查看(例如,在MSDN上),并尝试找到gcc提供的东西(足够接近)同一件事情.根据它使用的(和多少)可能是快速和容易的,或者可能更容易开始生产新的代码来做同样的事情.

您发现的*内在标头(可能)包含您需要替换的(至少部分)gcc对应的Microsoft的声明.您可能会在移植代码的过程中最终使用它们,因此请勿忘记它们.同时,只是包括这些标题而不是微软几乎肯定不会使代码也可以.

相关文章

本程序的编译和运行环境如下(如果有运行方面的问题欢迎在评...
水了一学期的院选修,万万没想到期末考试还有比较硬核的编程...
补充一下,先前文章末尾给出的下载链接的完整代码含有部分C&...
思路如标题所说采用模N取余法,难点是这个除法过程如何实现。...
本篇博客有更新!!!更新后效果图如下: 文章末尾的完整代码...
刚开始学习模块化程序设计时,估计大家都被形参和实参搞迷糊...