$?
,如果是 0 代表程式成功執行,非 0 的其他數字代表錯誤碼。
[dywang@dyw219 zzz]$ ls mainfunc1.c mainfunc1.c [dywang@dyw219 zzz]$ echo $? 0 [dywang@dyw219 zzz]$ ls mainfunc1.cc ls: cannot access mainfunc1.cc: No such file or directory [dywang@dyw219 zzz]$ echo $? 2
[dywang@dyw219 zzz]$ vim mainfun2.c [dywang@dyw219 zzz]$ cat mainfun2.c #include <stdio.h> int main( int argc, char *argv[] ) { int i, sum=0, tmp; for ( i=1; i<argc-1; i++) { tmp = atoi(argv[i]); if (tmp == 0) { printf("%s NOT a number!\n", argv[i]); return 1; } printf("%s+", argv[i]); sum += atoi(argv[i]); } sum += atoi(argv[i]); printf("%s=%d\n", argv[i], sum); return 0; }
[dywang@dyw219 zzz]$ gcc -o mainfun2 mainfun2.c
[dywang@dyw219 zzz]$ ./mainfun2 1 2 3 4 1+2+3+4=10 [dywang@dyw219 zzz]$ echo $? 0
[dywang@dyw219 zzz]$ ./mainfun2 1 2 abc 1+2+abc NOT a number!