日期:2014-05-16  浏览次数:20703 次

深入理解计算机系统一书的一个问题
在linux系统中,编写如下代码:
int accum=0;
int main(int x,int y)
{
  int t=x+y;
  accum+=t;
  return t;
}

gcc -o1 -s code.c后并没有像书上所说生成一个code.s文件,反而生成一个名字为1 的文件?
 
这是为什么呢?
我用的ubuntu12.

------解决方案--------------------
gcc -O1 -S code.c
------解决方案--------------------
gcc 指令 选项 

-o FILE 生成指定的输出文件。用在生成可执行文件时。
你写的就是这个啦. -o1 表示生成可执行文件1啦.

-O 或 -O1 优化生成代码。
还可以是-O2或-O3,其中优化程度不一样.

-S 表示在程序编译期间,在生成汇编代码后,停止.

大小写的问题啦.