Intel C++ Compiler(Ver10.1.020)试用后感想
2008-03-04 21:41
567 查看
Intel推出的C/C++编译器,功能很齐全,附带有很棒的调试器。我是将它嵌入在Visual Studio 2005.NET中进行使用的。由于是Intel的编译器,因此它自然含有非常丰富的编译优化选项,支持各种高级指令集以及SIMD等特性。同时,它也支持OPENMP。当然,这个微软的VC++编译器也支持。
不过最让我感到兴奋的还是Intel编译器几乎完整地支持C99标准,这个是VC9.0也没有支持的功能。另外还有一个选项更让人兴奋——Enable C++0x Support。我不想再多说什么了。
下面是对Intel C99标准语法支持的测试。如果大家要尝试的话请用C文件(.c)来保存一以下信息,再进行编译。如果用的是GCC的话就用gcc命令来编译。
#include <stdio.h>
struct Test
...{
int a;
union
...{
int a;
struct
...{
int c, d;
}u;
}s;
};
#define TRACE(...) (void)printf(__VA_ARGS__)
int main(void)
...{
int s[100] = ...{ [0] = 1, [10] = 2, [30] = 3 };
const int arraySize = 10;
int ss[arraySize]; // Here, the array "ss" cannot be initialized.
int a = 100;
int* restrict p = &a; // restrict supported
int *q = p;
int *pm = (int[]){ 1, 2, 3, 4 }; // anonymous array
struct Test t = ...{ .a=10, .s.u.c = 100, .s.u.d = 300 };
_Bool b = 1;
_Complex float comp = 0.15f;
TRACE("The answer is: %d ", *q);
TRACE("The answer is: %d ", t.a + t.s.u.c - t.s.u.d);
TRACE("The data is:%d ", t.s.a);
for(a=0; a<100; a++)
if(s[a] != 0)
TRACE("s[%d] is %d ", a, s[a]);
return 0;
}
不过最让我感到兴奋的还是Intel编译器几乎完整地支持C99标准,这个是VC9.0也没有支持的功能。另外还有一个选项更让人兴奋——Enable C++0x Support。我不想再多说什么了。
下面是对Intel C99标准语法支持的测试。如果大家要尝试的话请用C文件(.c)来保存一以下信息,再进行编译。如果用的是GCC的话就用gcc命令来编译。
#include <stdio.h>
struct Test
...{
int a;
union
...{
int a;
struct
...{
int c, d;
}u;
}s;
};
#define TRACE(...) (void)printf(__VA_ARGS__)
int main(void)
...{
int s[100] = ...{ [0] = 1, [10] = 2, [30] = 3 };
const int arraySize = 10;
int ss[arraySize]; // Here, the array "ss" cannot be initialized.
int a = 100;
int* restrict p = &a; // restrict supported
int *q = p;
int *pm = (int[]){ 1, 2, 3, 4 }; // anonymous array
struct Test t = ...{ .a=10, .s.u.c = 100, .s.u.d = 300 };
_Bool b = 1;
_Complex float comp = 0.15f;
TRACE("The answer is: %d ", *q);
TRACE("The answer is: %d ", t.a + t.s.u.c - t.s.u.d);
TRACE("The data is:%d ", t.s.a);
for(a=0; a<100; a++)
if(s[a] != 0)
TRACE("s[%d] is %d ", a, s[a]);
return 0;
}
相关文章推荐
- 卸载Intel C++ Compiler后Visual C++ 6.0不能工作了
- __ECC __ECL __ICC __ICL Intel C++ Compiler
- INTEL C/C++ COMPILER
- Firefox 4 PGO BUILD with Intel C++ Compiler 12
- intel c/c++ compiler 下载 安装 编译
- 卸载Intel C++ Compiler后Visual C++ 6.0不能工作了
- [转]Use Intel C++ Compiler in Eclipse (CDT) under Win32
- Intel系列开发工具- C++ Compiler,Fortran Compiler,IPP,MKL,VTune,Thread Checker
- 卸载 Intel C++ Compiler 后 Visual C++ 6.0 不能工作了
- 用Intel C++ Compiler 9.1编译STLPort5.1
- How to use Intel C++ Compiler in Visual Studio 2008
- 在 VS2010 中使用 Intel C++ Compiler XE 14 的一些问题
- Using Intel® C++ Compiler with the Eclipse* IDE on Linux*
- How to compile C++ boost library with Intel C++ compiler
- Intel C++ Compiler 关于Warning, error的处理
- Intel C++ Compiler强奸AMD CPU的证据
- 在WinDOWS X64下 Cuda NVCC 与 Intel C/C++ compiler联合使用的问题
- 安装 Intel C++ Compiler 12 以后,VC6 不能编译的问题。
- Intel C++ Compiler v9.1.030
- Ubuntu 12.04 配置intel c++ compiler开发环境