0. Java 语言和 C 语言中的命令行参数的获取(对比)
- Java 获取命令行参数,简单代码如下:
/** Test_1.java */
package com.willhonor.test;
public class Test_1 {
public static void main(String[] args) {
int count = 1;
System.out.println("命令行参数:");
if (args != null && args.length > 0) {
for(String arg : args) {
System.out.println(String.format("第 %d 个参数:%s", new Object[] {count++, arg}));
}
}
}
}
类文件 Test_1.class 所处目录结构如下:
在命令行运行该类,结果如下:
- C 语言获取命令行参数,简单代码如下:
#include <stdio.h>
void main(int count, char* args[]){
for(int i = 0;i < count;i++){
printf("%s\n", args[i]);
}
}
执行结果如下:
ubuntu@cuname:~/dev/c-lang/test/1test$ gcc -o t1 t1.c
ubuntu@cuname:~/dev/c-lang/test/1test$ ./t1 a 111 'this is string'
./t1
a
111
this is string
ubuntu@cuname:~/dev/c-lang/test/1test$
对比 Java 和 C 的执行结果,可以发现,在 C 语言的例子中,命令行的第一个参数是可执行程序本身,而 Java 的例子中,输出的则仅仅只有参数本身,并不会像 C 语言的例子一样包含执行文件的名称。
这是不同语言的一点区别。