請教c語言intmain括號裡面引數的作用

時間 2021-08-30 10:38:27

1樓:匿名使用者

#include

int main(int argc,char *argv)

return0;}/*

int argc, char **argv 用於執行時,把命令列引數傳入主程式。

argc -- 命令列引數總個數,包括 可執行程式名。

argv[i] -- 第 i 個引數。

argv[0] -- 可執行程式名。

*/關於帶引數的main函式網路收集:

int main(int argc,char **argv) 這裡面的**argv含義··

是用來傳遞引數的,假如你編譯成的檔名是a.exe,那麼在命令提示符下可以通過a.exe12

34來向程式傳遞引數,這時兩個引數就會傳遞到字串陣列argv中,注意此時實際傳遞了三個引數,第一個引數是檔名,第二個引數是12,第三個是34,而argc就是引數個數。

int argc, char **argv 用於執行時,把命令列引數傳入主程式。

argc -- 命令列引數 總個數,包括 可執行程式名。

argv[i] -- 第 i 個引數。

argv[0] -- 可執行程式名。

// 例如執行:

abc.exe

argc 等於 1, argv[0] 是 "abc.exe"

// 例如執行:

rec.exe 4 5.2

argc 等於 3, argv[0] 是 "rec.exe", argv[1] 是 "4", argv[2] 是 "5.2".

主函式裡若有:

int x;

float y;

char s[80];

strcpy(s,argv[0]); // 程式名存入 了 s

得到數值4

得到數值 5.2

ansi-c(c89/c99)的話main()函式有2種主要形式。

(1) int main(void)

(2) int main(int argc, char *argv)

(2)也可寫成int main(int argc, char **argv)

argv[argc]放空指標(null指標)。

argc和argv可以用別名。

另外,還有一種受系統限制的形式:

int main(int argc, char *argv, char *envp)

前兩個引數同(2),第三個引數envp放環境變數。

這個形式很少用。

所以嚴格講,

ansi-c推薦的帶引數的main()函式只有上面(2)這一種。

另外,蒐集了一下c和c++中常見的幾種形式:

(1) main()

(2) int main()

(3) int main(void)

(4) int main(int, char**)

(5) int main(int, char*)

(6) int main(int argc, char **argv)

(7) int main(int argc, char *argv)

(8) int main( int argc, char *argv, char*envp)

(9) void main(void)

(1)是(3)的簡寫。不推薦使用。

(2)是(3)的簡寫。在c++中是正確的形式。

(3)在c和c++中都是正確的形式。推薦使用。(還有預設int的main(void)形式)。

(4)和(5)是不用引數時的一種寫法。編譯器級別高時會警告。不推薦使用。

(6)是(7)的另外寫法。兩種都可以,憑個人愛好。

(7)是帶引數的正確的形式。推薦使用。

(8)是一種很少用的寫法,且受系統限制。

(9)一般不認為是正確的寫法。但是在嵌入式系統中有使用(包括void main()形式)

2樓:一顆程式猿

用與呼叫這個程式的時候指定引數

c語言中int main()中的括號什麼意思

3樓:會飛的小兔子

()表示函式有返回值,在main函式結束的時候要有return語句,如果沒有就會有warningvoid表示函式沒有引數。

int表示它是返回值是int型(整型),main表示它的名字是mian(函式名),()表示它是一個函式,它相當於是過載操作符,因為main是一個指標,經過操作符的操作,它才變成一個int型的引用。

擴充套件資料

int main()的使用

intmain()

intmain(void)

intmain(intargc,char**argv)

intmain(intargc,char**argv,char*env)

voidmain()

voidmain(void)

voidmain(intargc,char**argv)

voidmain(intargc,char**argv,char*env)

4樓:匿名使用者

函式後面都跟上括號的,主函式也不例外。

省略了引數,主函式也可以帶引數的,在執行時可能是從命令視窗輸入的引數,argc和argv指標。通過這些引數主函式可以將輸入的引數帶入執行

5樓:陽光上的橋

括號表示函式,c語言的函式定義後面都有一個括號。

6樓:

括號裡是定義引數的,這裡為空表示沒有引數,但也可以加上命令列引數,供系統呼叫

在c語言中intmain和intmainvoid有什麼區別

一般來將,void 就是空的意思,在這裡可以省略,int main void 可以看成 int main main 函式另一個重要的形式 是 int main int argc char argv 這個形式中 argc 是給main函式引數的個數,argv 中的成員就是相應的引數,看下面的例子就明白...

求c語言高手括號配對問題,C語言問題 括號配對

status matching char exp case else return no case else return no switch 以上我給出你的,是一個偽 你的問題要用到資料結構裡的棧。遇到 或者 就把它壓入棧內。遇到 或者 首先檢測棧是不是為空,如果不為空,在返回棧頂元素,如果匹配,...

c語言中char str括號裡為什麼是

這表示的是字元陣列,128是字元陣列長 不是字串長 char str 456 也是可以的。其中每個成員的值在 128 127之間,str 0 str 455 每個值不能超過127.如果超過,則擷取低位位元組存貯。題目裡是統計輸入字串中小寫英文字母個數,開頭用的就是這個。這個就好理解了。ascii 就...