在做 判断c运行时环境的程序
由于要得到汇编代码
gcc -c main.c -o main.s//发现 最后生成的.s文件里出现了大量的乱码》 这是由于我代码里面有大量的中文注释吗。于是又编写了个异常简单的程序,没有中文注释,发现还是 有乱码。
于是用 gcc -E main.c -o a.E 发现没有问题,然后gcc -S a.E -o a.S
汇编文件没有生成 倒是出现了这个
gcc: a.E: linker input file unused because linking not done
搜寻半天没果,就用
gcc -E main.c -o main.i
gcc -S main.i -o main.s
这下居然成功了。也没有乱码了。
有几个疑惑,linux 识别文件不是不以后缀名吗?怎么会出现这种类似于后缀名的问题
这是为何?