1. main() 參數
在Turbo C2.0啟動過程中, 傳遞main()函數三個參數: argc, argv和env。
* argc: 整數, 為傳給main()的命令列參數個數。
* argv: 字串數組。
在DOS 3.X 版本中, argv[0] 為程式啟動並執行全路徑名; 對DOS 3.0
以下的版本, argv[0]為空白串("") 。
argv[1] 為在DOS命令列中執行程式名後的第一個字串;
argv[2] 為執行程式名後的第二個字串;
...
argv[argc]為NULL。
*env: 安符串數組。env[] 的每一個元素都包含ENVVAR=value形式的字元
串。其中ENVVAR為環境變數如PATH或87。value 為ENVVAR的對應值如C:/DOS, C:
/TURBOC(對於PATH) 或YES(對於87)。
Turbo C2.0啟動時總是把這三個參數傳遞給main()函數, 可以在
使用者程式中
說明(或不說明)它們, 如果說明了部分(或全部)參數, 它們就成為main()子程式
的局部變數。
請注意: 一旦想說明這些參數, 則必須按argc, argv, env 的順序, 如以下
的例子:
main()
main(int argc)
main(int argc, char *argv[])
main(int argc, char &nbs
argc是參數的個數
argv儲存所有的參數,是一個字串數組
envp是環境變數指標,但這個參數並不標準通常用getenv()等函數代替
比如在命令列下面輸入
ls /home
其中argc == 2,argv[0] == "ls",argv[1] == "/home"
include
#include
void main( int argc, char *argv[], char *envp[] )
{
int iNumberLines = 0; // Default is no line numbers.
if( argc == 2 && stricmp( argv[1], "/n" ) == 0 )
iNumberLines = 1;
// Walk through list of strings until a NULL is encountered.
for( int i = 0; envp[i] != NULL; ++i )
{
if( iNumberLines )
cout
上一篇:Sizeof與Strlen
下一篇:LTE隨機接入為什麼分成reamblesGroupA 和reamblesGrou