2017-09-27 33 views
-4
int main(int argc, char *argv[]) 
{ 
    if (argc < 2) { 
     printf("missing argument\n"); 
     exit(-1); 
    } 
    printf("%s %s %s", argv[1], argv[2]); 
    return 0; 
} 

只是想給像./a 3 4這樣的命令行參數而不使用.out在linux終端謝謝!我怎樣才能給命令行參數,而不使用擴展名,不是./a.out 3 4,但是喜歡./a 3 4

+4

只是不要在名稱中的.out編譯它? – Annabelle

+0

沒有它說./a目錄中沒有這樣的文件,但如果我用./a.out運行它可以正常工作 –

+2

'gcc'接受'-o'標誌,允許您將'a.out'重命名爲任何你要。 – Jonesinator

回答

3

假設你的源文件是a.c,只需使用-o( 「輸出」)標誌,當你編譯它,就像這樣:

cc -o a a.c 

或者,如果你已經做了

cc a.c 

意義它默認爲a.out,您可以隨時重命名它:

mv a.out a 

當然,你可以叫它任何你想要的:

cc -o mytestprogram a.c 
相關問題