C语言中main函数参数用法
答案:6 信息版本:手机版
解决时间 2018-12-31 11:47
已解决
2018-12-31 06:32
C语言中main函数参数用法
最佳答案
2018-12-31 07:45
用于传递命令行位置参数到程序里,供使用。
argc 是 位置参数总个数,包括可执行程序名。
argv[i],i=0,1,2,3,...argc-1 是 位置参数 内容,字符串。
例如:
my_prog.exe 12 3.45 XYZ
argc = 4, argv[0]="my_prog.exe",argv[1]="12",
argv[2]="3.45",argv[3]="XYZ".
盘符路径算字符串。可执行文件名不带.exe,.bat时系统会自己添加了去找。没写可执行程序名(文件名)就算命令错。
全部回答
1楼
2018-12-31 12:57
只能是字符串。 你可以把字符串转int型,如果确实是数字串的话
2楼
2018-12-31 11:49
这个分数有点少哦 呵呵
比如说你生成的exe文件是C:\out.exe
在命令提示符下,输入c:\out.exe this is a test
那么,
argv[0]=out.exe
argv[1]=this
argv[2]=is
argv[3]=a
argv[4]=test
明白了吧,以空格为界分隔字符串
3楼
2018-12-31 10:58
int型的数也会被转成字符型的,比如你输入的是
程序名 123
那么argc=2,argv[1]="123".你可以用atoi或者sscanf函数把这个"123"转成123
4楼
2018-12-31 09:24
程序名 abc.exe ,带位置参数 3个 或2个 或1个 ...
abc.exe 987 65 4
abc.exe 987 65
abc.exe 987
void main(int arg ,char *arv[]){}
int型参数,通过字符传递,
char prog_name[60];
int x1,x2,x3;
strcpy(prog_name,arv[0]); // 程序名在 arv[0]
if (arg >=2) sscanf(arv[1],"%d",&x1); // 传递一个int型
if (arg >=3) sscanf(arv[2],"%d",&x2); // 传递一个int型
if (arg >=4) sscanf(arv[3],"%d",&x3); // 传递一个int型
-------------
浮点计算机参数 用 if (arg >=i) sscanf(arv[i-1],"%f",&fi); 从字符串里读出来。
5楼
2018-12-31 08:39
程序名 abc.exe ,带位置参数 3个 或2个 或1个 ...
abc.exe 987 65 4
abc.exe 987 65
abc.exe 987
void main(int arg ,char *arv[]){}
int型参数,通过字符传递,
char prog_name[60];
int x1,x2,x3;
strcpy(prog_name,arv[0]); // 程序名在 arv[0]
if (arg >=2) sscanf(arv[1],"%d",&x1); // 传递一个int型
if (arg >=3) sscanf(arv[2],"%d",&x2); // 传递一个int型
if (arg >=4) sscanf(arv[3],"%d",&x3); // 传递一个int型
-------------
浮点计算机参数 用 if (arg >=i) sscanf(arv[i-1],"%f",&fi); 从字符串里读出来。
我要举报
如果感觉以上信息为低俗/不良/侵权的信息,可以点下面链接进行举报,我们会做出相应处理,感谢你的支持!
大家都在看
推荐资讯