c语言main函数形参 c语言main函数参数

C语言main函数形参argv问题

你想说的是用来保存一组字符型指针的值的数组吧? 指针的值就是个地址值。

创新互联主要从事网站设计制作、成都网站制作、网页设计、企业做网站、公司建网站等业务。立足成都服务城厢,十余年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:028-86922220

这里错一下位写成 char* argv[] 你看着是不是能有点明朗呢?它保存的就是你说的,一组字符型指针的值。

argv就是用来保存这组字符型指针的 这样一个数组的首地址

参数里那个 char *argv[] 也可以写做 char argv[][] 或 char **argv

比如有这样的数组char* str[6]={"a1","b2","c3","d4","e5","f6"};

那么 *(str+1) 将取到 "b2"的首地址 而 str[2] 将取到 "c3"的首地址

而str[3][1] 取到的不再是地址,而是具体的值 它表示的就是 str[3] 这个位置保存的那个字符指针指向的一组字符构成的数组(字符串)的第2个数组元素

c语言main()函数形参

#includestdio.h

int main (int argc,char *argv[])

{

int i;

printf("your command line is: \n");

for (i=0; iargc; i++)

{

printf("%s ", argv[i]);

}

printf("\nTotally %d parameters\n", argc-1);

return 0;

}

编译后. 在命令行窗口输入

test.exe abc de fg

试试, 观察结果, 就什么都明白了. (假设生成的exe叫test.exe)

结果将是

your command line is:

test.exe abc de fg

Totally 3 parameters

c语言主函数中的参数有什么用?举例说明

C语言的带参数的main函数格式为main(int argc,char* argv[]),其中argc为参数个数加1,argv为参数列表,从argv[1]开始。编译后生成可执行文件,可以在执行的程序后加参数,比如编译一个程序为test.exe,则在执行时可以输入:

test.exe 1 firestone

在这里,argc等于3,argv[0]为"test.exe",argv[1]为"1",argv[2]为"firestone"。

如果有下面的程序:

#include stdio.h

void main(int argc,char *argv[])

{

printf("You've input %d parameters.\n",argc-1);

for(int i=1;iargc;i++)printf("The No.%d is:%s\n",i,argv[i]);

}

则上面的输入会产生如下运行结果:

You've input 2 parameters.

The No.1 is 1

The No.2 is firestone

C语言 main函数形参 赋值问题

main函数可以带形参,

形参名字随便,比如你可以叫main(int amao, char **agou),这没问题,但形参的数量类型以及顺序是固定的。

传给形参的值只能由命令行中得到

即使带形式参数,也不一定有大于1个参数,参照上一条,个数和值都是由命令行决定的

36:

A 相当于i = i

B 语句非法,指针不能用乘法运算,看起来是输入错了,应该是*p = *j; 如果是这样的话,B就是答案,*p = xx,相当于i=xx,*j,*和是逆运算抵消,相当于*p = j;

C 指针赋值给整形,错误

D 一级指针,取两次*,错误。


分享文章:c语言main函数形参 c语言main函数参数
链接地址:http://azwzsj.com/article/ddgpdpe.html