C语言中main函数参数用法

来源:百度知道 编辑:UC知道 时间:2024/07/05 02:28:27
在C语言中 可用如下形式为main函数传递参数
void main(int arg ,char *arv[])
{
}
其中 arg纪录参数的个数,arv存放 传递的参数
我所要问得是怎样 像main函数传递一个int型参数呢??
而不是一个字符型参数

程序名 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); 从字符串里读出来。

程序名 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)