gcc -c CStringAndPointer.c -o CStringAndPointer.o
执行时出现问题:
./CStringAndPointer.o
bash: ./CStringAndPointer.o: 权限不够
查看文件属性
ll CStringAndPointer.o
-rw-r--r-- 1 root root 1624 2014-05-2909:36 CStringAndPointer.o
修改权限:
chmod 744 CStringAndPointer.o
再次执行仍然问题:
./CStringAndPointer.o
bash: ./CStringAndPointer.o:无法执行二进制文件
使用file filename查看文件格式
fileCStringAndPointer.o
CStringAndPointer.o: ELF 64-bit LSBrelocatable, x86-64, version 1 (SYSV), not stripped
删除CStringAndPointer.o后,重新编译文件
gcc -oCStringAndPointer CStringAndPointer.c
第三次执行文件,成功
./CStringAndPointer 成功
所有操作都是在自己定义的目录底下。
分析:gcc编译器的参数使用不当造成,-c,只编译,不连接成为可执行文件,编译器只是由输入的.c等源代码文件生成.o为后缀的目标文件,通常用于编译不包含主程序的子程序文件