在CSDN上解决的第一个问题

前几天在CSDN上看了一个关于宏的文章,自己在DEV-C++中改了一下,运行。。。。出现了错误。 程序内容如下: #include<iostream> using namespace std; #define Enum2Str(e) #e enum value{one,two,three}; void test(value v) {      switch (v)      {         case one: cout<<Enum2Str("one")<<endl; break;         case two: cout<<Enum2Str("two")<<endl; break;         case three: cout<<Enum2Str("three")<<endl; break;         } } int main() {     test(one);     system("pause");     return 0;   }   在第一次编译时先是被金山当作病毒杀掉了。 再次编译时出现了这么一句错误提示: ld returned 1 exit status。 我不怎么明白这句是什么意思。于是发了帖,得到了解决,以前总是在乱猜。如猜这是不是跟宏有关还是跟初始化有关。 正确的是: ld 的意思是ld=dynamic linker/load,关编译连接程序的关键工具,程序编译成.o文件后,会有连接器将这些文件连接成.exe文件。在linux系统中是ld- linux.os*库,在执行时去寻找并连接相应的动态连接库。在VC中相当于link.exe连接器。 至于为什么被金山干掉,猜可能是编译器的问题或者是金山的报错。

你可能感兴趣的:(linux,System,工具,金山,编译器)