C++ 程序:创建无参数且无返回值的函数


编程语言中的函数用于使代码模块化。在许多应用程序中,我们创建子模块来使我们的代码易于编写、易于调试,并且还通过避免重复不必要的代码来进行优化。为了实现这些功能,函数就应运而生。在许多情况下,函数会接收参数并返回某些内容。有时它可能不接收任何参数但会返回某些内容。还有一些特殊情况,即函数既不接收任何参数也不返回任何内容。在本教程中,我们将介绍 C++ 中此类无参数且无返回值的函数。

无参数且无返回值类型的函数

要定义一个这样的无参数且无返回值类型的函数,返回类型必须为 void,而参数列表可以为空,也可以在其中写 void。语法如下所示。

语法

void function_name ( ) {
   // function body
}

语法

void function_name ( void ) {
   // function body
}

在这种情况下,我们只是打印一些内容,或执行任何类似显示的操作,或在函数内部执行某些任务,此类情况适合使用此类型的函数。让我们来看一个这样的案例,并了解其在 C++ 中的实现。在我们的第一个示例中,我们将为固定的 10 行打印一个星形金字塔。

算法

  • 定义函数 pyramid(),它不接收任何参数
  • 对于初始化 i := 1,当 i <= 10 时,更新(将 i 增加 1),执行 -
    • 对于初始化 j := 1,当 j <= 10 - i 时,更新(将 j 增加 1),执行。
      • 显示空格
    • 结束循环
    • 对于初始化 j := 1,当 j <= i 时,更新(将 j 增加 1),执行。
      • 显示 "* "
    • 结束循环
    • 转到新行
  • 结束循环
  • 结束函数体
  • 调用 pyramid()

示例

#include <iostream> #include <sstream> using namespace std; void pyramid( ) { for( int i = 1; i <= 10; i++ ) { for( int j = 1; j <= 10 - i; j++ ) { cout << " "; } for( int j = 1; j <= i; j++ ) { cout << "* "; } cout << endl; } } int main() { pyramid(); }

输出

         * 
        * * 
       * * * 
      * * * * 
     * * * * * 
    * * * * * * 
   * * * * * * * 
  * * * * * * * * 
 * * * * * * * * * 
* * * * * * * * * *

此程序仅打印大小为 10 的金字塔。由于大小是固定的,因此它不接收任何参数,并且由于它直接打印星号,因此不返回任何内容。让我们再看一个类似的星形金字塔示例,该示例从用户那里获取输入,但我们也不传递任何参数,并且该函数不会返回任何内容。

算法

  • 定义函数 pyramid(),它不接收任何参数
  • 从用户处获取 n 作为输入
  • 对于初始化 i := 1,当 i <= n 时,更新(将 i 增加 1),执行 -
    • 对于初始化 j := 1,当 j <= n - i 时,更新(将 j 增加 1),执行
      • 显示空格
    • 结束循环
    • 对于初始化 j := 1,当 j <= i 时,更新(将 j 增加 1),执行
      • 显示 "* "
    • 结束循环
    • 转到新行
  • 结束循环
  • 结束函数体
  • 调用 pyramid()

示例

#include <iostream> #include <sstream> using namespace std; void pyramid( void ) { int n; cout << "Enter line numbers: "; cin >> n; for( int i = 1; i <= n; i++ ) { for( int j = 1; j <= n - i; j++ ) { cout << " "; } for( int j = 1; j <= i; j++ ) { cout << "* "; } cout << endl; } } int main() { pyramid(); }

输出

Enter line numbers: 18
                 * 
                * * 
               * * * 
              * * * * 
             * * * * * 
            * * * * * * 
           * * * * * * * 
          * * * * * * * * 
         * * * * * * * * * 
        * * * * * * * * * * 
       * * * * * * * * * * * 
      * * * * * * * * * * * * 
     * * * * * * * * * * * * * 
    * * * * * * * * * * * * * * 
   * * * * * * * * * * * * * * * 
  * * * * * * * * * * * * * * * * 
 * * * * * * * * * * * * * * * * * 
* * * * * * * * * * * * * * * * * *

在这里,我们使用 cin 方法从用户处获取输入。此解决方案不需要额外的参数传递。

结论

函数用于使代码模块化并易于处理。在大多数情况下,我们使用函数来接收参数并在进行某些计算后返回某些值。但这并不是一个强制性过程。在本文中,我们讨论了如何在 C++ 中编写一个既不接收任何参数也不返回任何内容的函数。当某些任务是预定义的时,我们可以使用这种类型的函数。例如,在我们的第一个示例中,星形金字塔只有 10 行。因此,没有额外的输入。在第二个示例中,我们以输入的形式获取行号,但不是作为输入参数。我们直接从用户那里获取输入并将其存储到此函数内的局部变量中,然后在循环中使用它。

更新时间: 2022年10月19日

5K+ 阅读量

开启你的 职业生涯

通过完成课程获得认证

立即开始
广告