没有返回类型的函数

function with no return type

本文关键字:函数 返回类型      更新时间:2023-10-16

我有2个问题,希望有人能给我澄清一下。

  1. 当写一个函数的输入参数列表是相同的参数?
  2. 当一个函数没有返回类型是"返回0;"只是离开了函数代码?

例如,如果我要写一个函数,在它的输入参数列表中使用整数,没有返回类型,这是正确的方式来写它吗?:

int convertTemp( int a, int b) {} 
  int convertTemp( int a, int b) {} 
应:

 void convertTemp( int a, int b) {} 

如果函数不返回任何东西,则int表示函数的返回类型为int。注意,您仍然可以在返回类型为void的函数中使用return语句。

我同意上面的答案,返回类型应该改为void,问第一个问题时,你需要区分形式参数和实际参数。形式参数为函数定义中的a和b:

void func (int a, int b) {}

,而函数调用中的实际形参是2和3:

func (2,3)

,其中2被复制到a, 3被复制到b。

您希望将返回类型设置为void

void convertTemp( int a, int b) {
    //do stuff...
    return;  //optional, but a good habit to get in to
} 
  1. 输入参数列表是输入类型和名称的列表。这些是作为调用代码中的值列表传递的。
  2. 如果没有返回值,则该函数声明为void返回类型,并且不应该在return语句中给出值。

使用void返回类型声明函数将不返回任何值:

void convertTemp( int a, int b) {
} 

现在,函数如何转换一个Temp当它返回什么?

它绝对不应该在幕后修改一些状态(比如全局变量)。

返回转换后的值是我所期望的。

必须将void返回类型更改为转换结果的类型。

我肯定会在遇到上面这样的代码时进行调查。