注册 登录
编程论坛 C++教室

[求助] 怎么用main中的参数char**argv

cpluslover 发布于 2007-04-12 16:29, 1144 次点击

我现在要用到main中的参数char* argv[]
拿出来两个参数
作为strcmp的两个参数来用,
改怎么写main()函数呢

strcmp我已经写好
了。

请在程序运行时输入串,并且这两个串是char* argv[]传递的。

6 回复
#2
cpluslover2007-04-12 18:46

这么久没有人回,是不是没有说清楚
我贴上源代码吧
想在命令行下输入两个串,然后输出比较的结果


#include<stdlib.h>
#include<iostream>
using namespace std;

int strcmp(const char* , const char* );

int main(int argc, char* arg[])
{
int i=0;
while(i<argc)
{
cout<<"arg "<< i<< ": " <<arg[i]<<endl;
i++;

}
i=0;
int m=strcmp(arg[i], arg[i+1]);

if(m>0) cout<<"bigger!";
else
if(m==0) cout<<"equal";
else cout<<"smaller!";

return 0;
}


int strcmp(const char* str1, const char* str2)
{
while(*str1 && *str2)
{
if(*str1==*str2) { ++str1; ++str2;}
else if(*str1 > *str2) return 1;
else return -1;
}
if(!*str1 && !*str2) return 0;
else if(!*str2) return 1;
else return -1;

}

#3
aipb20072007-04-12 19:04
要在dos命令行窗口中运行程序,加上参数
#4
cpluslover2007-04-12 19:06

关键是这个程序不能运行啊

没有。exe文件在dos下没法运行啊


但是又执行不了

这就是矛盾所在

请你运行下试试

#5
aipb20072007-04-13 21:28
可以运行的,exe在文件目录debug文件价里
#6
yuyunliuhen2007-04-13 21:44

可以在DOS进入.EXE文件的相应的路径,再执行*.exe就可以了

#7
cpluslover2007-04-14 19:25
谢谢大家了

问题解决了呵呵
1