您的位置:

c语言中一定要有形参吗,c语言中必须有形参吗

本文目录一览:

c语言中是不是只有大程序要有形参和实参,一些简单的程序例如求1~10的和之类的就不需要有形参和实参?谢谢

c语言中的形参、实参跟函数大小、程序大小没有必然的联系。

小的程序也可以有形参、实参。大程序可能也用不到。

这个程序

#include stdio.h

int a,b;

void fun()

{a=100;b=200;

}

main()

{int a=5,b=7;

fun();

printf("%d%d",a,b);

}

为什么形参没有影响实参??????运行结果还是57

fun函数没有返回值,干吗要加return语句?

你这个问题实际不是形参、实参的问题而是变量的作用域的问题。

main函数中的a、b的作用域比fun的大。所以printf函数中实际调用的是main中的a、b值。

在C语言中,形参名与实参名到底是一样好,还是不一样好?

名字是否相同并不重要,重要的是类型必须相同。

因为,形参是所在函数的局部变量,所以形参在所在函数中会被多次使用,你需要统筹考虑。

而实参是主调函数的局部变量,是根据实际需要作为参数调用被调函数的,是否调用被调函数并不需要另外考虑实参名称,这是与形参的主要不同点。

C语言中为什么要定义函数和形参类型?(形参要)(函数不是不能赋值吗?)

//C语中定义函数,是完成某项特定的功能,知道它完成的功能就可以使用它,体现了它的模块化的特点.例如我们平常学的输出就是一个函数,只不过是系统定义好的

只要我想输出某个东西,我就可以调用printf来完成相应的功能.

例如:main()

{ int a,b,c;

scanf("%d,%d",a,b);

c=max(a,b);

printf("Max is %d",c);

}

int max(int x, int y)//这 个就是我们定义的函数,这个函数是求两个数的最大值.形参x,y本身都是没有值,什么时候有值呢,是我们调用的时候,c=max(a,b),它的意思把a给x,b给y.

{ int z;

z=xy?x:y;

return(z);

}

C语言中定义函数时,什么时候必须定义形参,什么时候可以省略,求指点~谢谢啦

函数声明时只需写出形参类型。

函数定义时必须写出形参类型和变量名。

C语言中的标准函数printf便使用这种机制。在声明不确定形参的函数时,形参部分可以使用省略号“…”代替。“…”告诉编译器,在函数调用时不检查形参类型是否与实参类型相同,也不检查参数个数。

扩展资料

示例

例如:

void ConnectData(int i,...)

在上面的代码中,编译器只检查第一个参数是否为整型,而不对其他参数进行检查。

对于可变参数的函数,需要进行特殊的处理。首先需要引用 stdarg.h 头文件,然后利用va_list类型和va_start、va_arg、va_end 3个宏读取传递到函数中的参数值。

这几个宏的定义如下(在 ANSI C 中):

type va_arg( va_list arg_ptr, type );

void va_end( va_list arg_ptr );

void va_start( va_list arg_ptr, prev_param )。

请问C语言函数定义中函数首部里的形参名必须有吗?可不可以只写形参类型而不写具体的形参名呢。

可以啊。不过不写名的话就没法直接使用了(可以间接引用,如通过指针)。

c语言中,有些函数没有形参,怎么使用,主函数除外。急!!!

直接通过函数名+括号调用啊,形参只是你希望给这个函数传递值,很多函数都可以没有形参