带参数main函数
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
本回答专业性由科学教育分类达人陶文认证
满意回答
运行ຫໍສະໝຸດ Baidu法:
(假设你的程序为Untitled1.exe)
打开命令提示符:
转到你的Untitled1.exe的目录,
输入下列命令:
Untitled1.exe a basdfsa 1314324 -k -f
回车就可以运行了。
这时,在Main函数里定义的
int main(int argc, char *args[])
main函数也可以带参数。带参数main函数的定义格式如下:
void main(int argc, char *argv[])
{
... ...
}
argc和argv是main函数的形式参数。这两个形式参数的类型是系统规定的。如果main函数要带参数,就是这两个类型的参数;否则main函数就没有参数。变量名称argc和argv是常规的名称,当然也可以换成其他名称。
那么,实际参数是如何传递给main函数的argc和argv的呢?我们知道,C程序在编译和链接后,都生成一个exe文件,执行该exe文件时,可以直接执行;也可以在命令行下带参数执行,命令行执行的形式为:
可执行文件名称参数1参数2 ... ...参数n
执行文件名称和参数、参数之间均使用空格隔开。例如,在linux下运行程序./a.out 1 2,可执行文件名称为./a.out,参数1为字符串1,参数2为2。
如果按照这种方法执行,命令行字符串将作为实际参数传递给main函数。具体为:
(1)可执行文件名称和所有参数的个数之和传递给argc;所以上面的argc=3
(2)可执行文件名称(包括路径名称)作为一个字符串,首地址被赋给argv[0],参数1也作为一个字符串,首地址被赋给argv[1],... ...依次类推。
里的argc = 6,就是表示有六个参数,
对应的
args[0] = "Untitled1.exe";
args[1] = "a";
args[2] = "basdfsa";
args[3] = "1314324";
args[4] = "-k";
args[5] = "-f";
就是这样子了。
满意回答
运行ຫໍສະໝຸດ Baidu法:
(假设你的程序为Untitled1.exe)
打开命令提示符:
转到你的Untitled1.exe的目录,
输入下列命令:
Untitled1.exe a basdfsa 1314324 -k -f
回车就可以运行了。
这时,在Main函数里定义的
int main(int argc, char *args[])
main函数也可以带参数。带参数main函数的定义格式如下:
void main(int argc, char *argv[])
{
... ...
}
argc和argv是main函数的形式参数。这两个形式参数的类型是系统规定的。如果main函数要带参数,就是这两个类型的参数;否则main函数就没有参数。变量名称argc和argv是常规的名称,当然也可以换成其他名称。
那么,实际参数是如何传递给main函数的argc和argv的呢?我们知道,C程序在编译和链接后,都生成一个exe文件,执行该exe文件时,可以直接执行;也可以在命令行下带参数执行,命令行执行的形式为:
可执行文件名称参数1参数2 ... ...参数n
执行文件名称和参数、参数之间均使用空格隔开。例如,在linux下运行程序./a.out 1 2,可执行文件名称为./a.out,参数1为字符串1,参数2为2。
如果按照这种方法执行,命令行字符串将作为实际参数传递给main函数。具体为:
(1)可执行文件名称和所有参数的个数之和传递给argc;所以上面的argc=3
(2)可执行文件名称(包括路径名称)作为一个字符串,首地址被赋给argv[0],参数1也作为一个字符串,首地址被赋给argv[1],... ...依次类推。
里的argc = 6,就是表示有六个参数,
对应的
args[0] = "Untitled1.exe";
args[1] = "a";
args[2] = "basdfsa";
args[3] = "1314324";
args[4] = "-k";
args[5] = "-f";
就是这样子了。