c语言中的main函数需要类型说明吗(C语言中的main函数参数)

小豆丁:老张啊,我遇到困难了...,我来为大家讲解一下关于c语言中的main函数需要类型说明吗?跟着小编一起来看一看吧!

c语言中的main函数需要类型说明吗(C语言中的main函数参数)

c语言中的main函数需要类型说明吗

小豆丁:老张啊,我遇到困难了...

老张:啥困难啊?愁眉苦脸的,不至于哈!

小豆丁:今天我才发现,C语言中main函数还有参数,可是我不知道这个参数表示的是什么含义,也不知道怎么用。

老张:就这点问题?

小豆丁:嗯呐,我没研究明白,好沮丧...

老张:这个问题不难,别放弃哈,我教你!

小豆丁:还是老张你最好!

老张:在C语言中,我们一般情况下不使用main函数的参数,但是并不代码这main函数没有参数,在当前C语言阶段,main函数可以有两个参数,一个是整数类型的argc,一个是指针数组argv,我们可以写成这个样子:

int main(int artc,char* argv[]){}

小豆丁:那这两个参数表示什么含义啊?

老张:我们先说第二个参数,第二个参数是一个指针数组,数组中每个元素都是char类型的指针,每个指针指向一个字符串。

小豆丁:那这些字符串来自于哪里啊?主函数也不能被其他函数调用啊,也没办法对主函数传参啊?

老张:没错,我们不能调用主函数!其实主函数中第二个参数里的每一个指针所指向的字符串都来自于用户在命令行上的参数。比如说,你写好一个程序,编译后生成a.out可执行程序,当你在运行的时候,你会在终端命令行上输入:a.out,那么这个argv数组中的第一个元素argv[0]所指向的字符串就是"a.out"。如果你运行时输入:a.out 40 100,那么argv数组中第一个元素argv[0]指向字符串"a.out",第二个元素argv[1]指向字符串"40",第三个元素指向argv[2]指向字符串"100"。所以当我们在程序中就可以用数组元素进行相关的数据处理了。

小豆丁:哦,原来指针数组中每个元素指向的内容是来自于命令行参数啊。可是我在什么时候会用到这种方式呢?有什么好处啊?

老张:有些时候我们写好一个程序,要处理数值不同的各种场景, 那么你就可以用主函数参数进行数值的传递,每次运行的时候,只要给不同的数值就行,就不需要回头更改代码重新编译了。

小豆丁:哦,明白了。那主函数的第一个参数呢?

老张:第一个参数是个整数类型的参数,它表示命令行参数有多少个,也就是第二个参数argv数组的元素个数。

小豆丁:这个样子啊,那我知道了。

小豆丁:师傅啊,我觉得学编程好难啊,好沮丧...

老张:骚年!生活本就如此,哪有那么多的一帆风顺,谁不是在负重前行呢?别轻易放弃,只要努力,终究会拼到你想要的美好!

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页