游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1998|回复: 5

main 疑问

[复制链接]

3

主题

22

帖子

22

积分

注册会员

Rank: 2

积分
22
发表于 2007-8-8 23:21:00 | 显示全部楼层 |阅读模式
如: int main(int argc,char *argv[])

我想询问一下 main 的参数含义 和具体的使用方法

谢谢~

86

主题

2251

帖子

2386

积分

金牌会员

Rank: 6Rank: 6

积分
2386
QQ
发表于 2007-8-8 23:32:00 | 显示全部楼层

Re:main 疑问

  1. // ex.cpp

  2. #include <stdio.h>

  3. int main(int argc, char* argv[])
  4. {
  5.     int i;
  6.     printf("test main parameter\n");
  7.     printf("argc:%d\n", argc);
  8.     for(i=0;i<argc;i++)
  9.     {
  10.         printf("argv[%d]:%s\n", i, argv[i]);
  11.     }
  12.     return 0;
  13. }
复制代码



C:\>cl ex.cpp
用于 80x86 的 Microsoft (R) 32 位 C/C++ 优化编译器 14.00.50727.762 版
版权所有(C) Microsoft Corporation。保留所有权利。

ex.cpp
Microsoft (R) Incremental Linker Version 8.00.50727.762
Copyright (C) Microsoft Corporation.  All rights reserved.

/out:ex.exe
ex.obj

C:\>ex
test main parameter
argc:1
argv[0]:ex

C:\>ex.exe
test main parameter
argc:1
argv[0]:ex.exe

C:\>ex /test
test main parameter
argc:2
argv[0]:ex
argv[1]:/test

C:\>d:

D:\>c:\ex
test main parameter
argc:1
argv[0]:c:\ex

D:\>c:\ex.exe
test main parameter
argc:1
argv[0]:c:\ex.exe

D:\>c:\ex.exe -test
test main parameter
argc:2
argv[0]:c:\ex.exe
argv[1]:-test

2

主题

429

帖子

435

积分

中级会员

Rank: 3Rank: 3

积分
435
发表于 2007-8-8 23:47:00 | 显示全部楼层

Re:main 疑问

程序的入口函数

可不带参数
如果使用下面的参数
int argc,char *argv[]  
argc表示参数个数+1,argv表示指针数组

参数在命令行下使用
如  myProgram.exe aaa bbb ccc

3

主题

22

帖子

22

积分

注册会员

Rank: 2

积分
22
 楼主| 发表于 2007-8-9 01:34:00 | 显示全部楼层

Re:main 疑问

感谢以上两位 funcman的代码非常清晰 明白了 呵呵 谢谢

76

主题

1100

帖子

1107

积分

金牌会员

Rank: 6Rank: 6

积分
1107
发表于 2007-8-9 22:12:00 | 显示全部楼层

Re:main 疑问

在无必要下,一般可以删除main自带的参数.

3

主题

22

帖子

22

积分

注册会员

Rank: 2

积分
22
 楼主| 发表于 2007-8-10 02:21:00 | 显示全部楼层

Re:main 疑问

恩 我知道 一般自己写小程序都是不带参 久了  在去用带参main 才发现对它这么陌生...
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-25 13:04

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表