- 性别
- 保密
- 积分
- 125
- 积分
- 138
- 精华
- 0
- 阅读权限
- 20
- 注册时间
- 2012-5-7
- 最后登录
- 2013-8-9
- 帖子
- 3
- 性别
- 保密
|
本帖最后由 sky_yx 于 2015-12-30 14:17 编辑
看下dos的命令:
Microsoft Windows [版本 6.2.9200]
(c) 2012 Microsoft Corporation。保留所有权利。
D:\>dir /w /x
驱动器 D 中的卷是 Data
卷的序列号是 000A-6AA9
D:\ 的目录
2012/09/26 18:50 <DIR> PROGRA~1 Program Files
2012/09/23 09:10 <DIR> PROGRA~2 Program Files (x86)
2012/11/02 23:49 <DIR> Tools
0 个文件 0 字节
3 个目录 195,302,260,736 可用字节
D:\>
---------------------
可以看到上dir是一个命令,带有两个参数/w和/x
因此:int main(int argv, char** argc)中的argv参数就是表示这个程序最后在dos情况下可以带2个参数,
而char** argc就是这个参数数组的指针, 这个数组有两个元素,每个元素是指针分别指相各自的"参数字符串",如上面的"/w" "/x".
注意的是,这里的参数它包括最终的程序名本身的字符串(含路径),因此计数时要小心.- #include <iostream>
- using namespace std;
- int main(int argc, char *argv[]){
- char** p=argv;
- for(int i=0;i<2;i++){
- cout<<*(p+i)<<endl;
- }
- return 0;
- }
复制代码 这时调试时注意要加上参数,否则无法执行。假定参数为:adfaf
结果如下:
C:\Users\bfdn\Documents\C-Free\Temp\未命名2.exe
adfaf
请按任意键继续. . .
它实际上相当于在dos下执行:
未命名.exe adfaf
|
|