| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 587 人关注过本帖
标题:各位高手帮忙:如何给应用程序传递参数
只看楼主 加入收藏
yuwenhuaji
Rank: 1
等 级:新手上路
帖 子:14
专家分:2
注 册:2009-10-31
结帖率:75%
收藏
已结贴  问题点数:20 回复次数:4 
各位高手帮忙:如何给应用程序传递参数
请问如何在dos下给main()函数传递参数?

我一直不能理解这个问题,请问是不是在DOS下用指令来输入参数呢?
又是用什么指令和格式呢?
谢谢了!
搜索更多相关主题的帖子: 参数 应用程序 
2009-10-31 15:00
UserYuH
Rank: 12Rank: 12Rank: 12
来 自:毅华
等 级:火箭侠
威 望:8
帖 子:720
专家分:3300
注 册:2009-8-10
收藏
得分:20 
可以看下面这列子。
把下面的代码保存为name01.c(可以自己改名),再生成应用程序,名为: name01.exe。这样就可以在DOS下测试了。
如输入:
D:\TC0\name01 01.txt 02.txt  回车      ("D:\TC0>"是工作目录,也就是name01.exe的路径)
·
运行后,01.txt文件里的内容复制到新建的02.txt文件里。

程序代码:
程序代码:
#include <stdio.h>  
int main(int argc,char **argv)  
{  
FILE *in,*out;  
char line[256];  
int i;  
if(argc!=3) return 1;   /* 如参数不对反回1,argc记作输入字符串的个数 */ 
if(!(in=fopen(argv[1],"r")))return 2;  /* argv[1]保存字符串"01.txt",如打开文件失败反回 2 */ 
if(!(out=fopen(argv[2],"w"))) return 3;  /* argv[2]保存字符串"02.txt",如打开文件失败反回 3 */
for(i=0;fgets(line,256,in);i++)  /* 将 01.txt 复制 02.txt  */
   fprintf(out,line);  
fcloseall();return 0;  
}


argv[0]保存的是程序路径,argv[0]=D:\TC0\NAME01.EXE

努力—前进—变老—退休—入土
2009-10-31 15:35
yuwenhuaji
Rank: 1
等 级:新手上路
帖 子:14
专家分:2
注 册:2009-10-31
收藏
得分:0 
谢谢,你是怎么知道程序路径的呢?
2009-10-31 16:06
UserYuH
Rank: 12Rank: 12Rank: 12
来 自:毅华
等 级:火箭侠
威 望:8
帖 子:720
专家分:3300
注 册:2009-8-10
收藏
得分:0 
路径是自已设置的,自己当然知道了,你可以随意选择放哪,你在DOS进到这路径就可以了,

努力—前进—变老—退休—入土
2009-10-31 16:12
yuwenhuaji
Rank: 1
等 级:新手上路
帖 子:14
专家分:2
注 册:2009-10-31
收藏
得分:0 
恩,谢谢!
2009-11-01 00:07
快速回复:各位高手帮忙:如何给应用程序传递参数
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020637 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved