c - 在 main 中声明的函数原型(prototype) - 最佳实践?

标签 c

在 main 函数内部声明函数原型(prototype)是一种好的风格吗?

我在看 C 教程,我认为它已经过时了。但是,它们在 main 中声明了函数原型(prototype)。我通常在 main 之前声明 outside。

#include <stdio.h>

int main ()
{
    char myname [30];
    int theage;
    int getage ();

    printf ("\nEnter your name:");
    gets (myname);
    theage = getage ();
    printf("\n AGE = %d and NAME = %s", theage, myname);
    return 0;
}

int getage ()
{
    int myage; /* local to only getage() */

    printf ("\nEnter your age: ");
    scanf ("%d",&myage);
    return (myage);
}

最佳答案

出于以下几个原因,我个人会说“不”:

  • 它使 main 的代码更长
  • 这可能会让新手误以为该函数在 main 范围内
  • 在实际代码中,我通常会将函数放在不同的编译单元中并#include 它的头文件

关于c - 在 main 中声明的函数原型(prototype) - 最佳实践?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/940402/

相关文章:

c - 这个typedef是什么意思?

c - 如何将 IPv4 地址转换为十进制

c - 使用无符号索引执行反向 'for' 循环的最佳方法是什么?

c - 使用按位运算符进行快速字符串搜索

c - 语句中运算符的优先级和执行

c++ - 转换和参数警告

c - 为什么 C 预处理器不忽略它跳过的 block 中的无效指令?

c - 重建所有项目或部分项目需要什么?

C程序: Error reading and printing a particular column from a text file

c - 使用变量查找剩余金额