c语言问题,对于void f(x) 这是一个不返回值而且只有一个int类型的参数的函数原型吗?为什

c语言问题,对于void f(x)
这是一个不返回值而且只有一个int类型的参数的函数原型吗?为什么啊?

这取决于你函数f()里面变量x的类型定义,

如果是void f(int x)

那么这是一个没有返回值而且只有一个int类型的形参的函数原型。

C语言中函数的组成部分为:

返回类型    函数名(参数)

{

函数主体

}

    返回类型:一个函数可以返回一个值。return_type 是函数返回的值的数据类型。有些函数执行所需的操作而不返回值,在这种情况下,return_type 是关键字 void。

    函数名称:这是函数的实际名称。函数名和参数列表一起构成了函数签名。

    参数:参数就像是占位符。当函数被调用时,您向参数传递一个值,这个值被称为实际参数。参数列表包括函数参数的类型、顺序、数量。参数是可选的,也就是说,函数可能不包含参数。

    函数主体:函数主体包含一组定义函数执行任务的语句。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-12-26
这种写法时下肯定是错误的,除非x是自定义的整型int的别名。早期的C编译器可能认为x是默认的整型变量,但我没有考察过函数的形参可不可以将int x直接写成x——如果可以,那就是你说的“不返回值而且只有一个int类型的参数的函数原型”。
第2个回答  推荐于2017-12-26
没有为什么啊,函数定义就是这个格式啊, 返回值 函数名(参数列表),就是这个格式追问

可是我上边说的是错误的…为何啊

追答

void f(),可以写作 void f(void)是一样的,没有返回值,没有参数列表,参数列表的void可以省略,但是返回值的void不可以省略

本回答被提问者采纳
第3个回答  2015-04-20
我表示形参上没有写int类型~你怎么确定这是一个int类型形参的函数原型呢~追问

但是void f(),为什么它也对呢?

追答

这个是系统的优化功能~
就是代表的void f(void)
就像你平时写main函数一样~你括号里有没有void都没有关系~这是系统的自动优化功能~

本回答被网友采纳
相似回答