在学习Unix操作系统的时候,我们会经常遇到很多的问题。例如Unix操作系统中的设计错误问题,对于Unix操作系统此程序中的错误(设计错误)我们该如何解决呢。就让我们一起来学习吧!
我们知道到,在这个Unix操作系统源程序文件中,定义了两个函数:TestInput()和main(),定义了一个宏TESTOK,同时包含了两个标准的头文件。为了把这个C程序转换成可执行文件,在shell提示符下输入:$cc myprog.c
在Unix操作系统程序中没有任何语法错误的情况下,cc将在当前目录下生成一个名为a.out的可执行文件,如:
- $ cc myproc.c
- $ ls -l
- -rwx------ 1 yxz users 5812 Aug 31 15:32 a.out
- -rw------- 1 yxz users 716 Aug 31 15:27 myproc.c
- $
还可以看到这里a.out是一个可执行文件。当然这个程序由于在设计上有些失误,我们现在还不能马上就带参数运行。但不带参数运行还是可以的。只不过此时该程序什么都没有干,如:$ a.out$
在程序中我们通过main函数的两个参数argc和argv而使程序能够引用shell命令行参数;这是Unix操作系统环境下一种常用的编程技术。
在生成了a.out文件之后,我们自然可用mv命令将其修改为某个合适的名称。但更简单的方法是在cc命令行中加上-o选项,使cc直接将可执行文件写入到指定的文件中而不生成a.out文件,如:
- $ cc -o myprog myprog.c
- $ ls -l myprog
- total 14
- -rwx------ 1 yxz users 5812 Aug 31 15:34 myprog
- -rw------- 1 yxz users 716 Aug 31 15:27 myprog.c
- $
我们看到,Unix操作系统myprog这个文件除了文件名及修改时间同a.out不一样外,其他属性同a.out 都是一摸一样的。这也说明了两者的等价性。
以上就是我们这次要讲的关于Unix操作系统中的问题,希望对大家对Unix操作系统的学习有所帮助。
【编辑推荐】