c - C 语言中 main(i) 的含义是什么?它是如何工作的? i 的值和类型是什么?

标签 c program-entry-point

void main(i)
{
    printf("%d",i);
}

这里的main(i)是什么意思以及它是如何工作的? i 的值和类型是什么?

最佳答案

void main(i)

声明没有类型的函数参数仅在旧的、过时的 C90 标准中有效。在 C90 中,i 将默认为 int 类型。

如果此代码用于独立实现(嵌入式系统或操作系统),则它在 C90 中是有效的。它相当于void main (int i)。您的编译器需要记录这种形式的 main() 的用途。

如果此代码用于托管实现(在操作系统上运行的编程),则它无效并且无法编译。 C90 2.1.2.2 托管环境仅允许两种形式的 main():

int main(void) 
int main(int argc, char *argv[])

在较新的 C 标准中,无论是独立的还是托管的代码都将无效,因为“默认为 int”规则已从语言中删除。

关于c - C 语言中 main(i) 的含义是什么?它是如何工作的? i 的值和类型是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31240009/

相关文章:

c - "UNDEFINED REFRENCE TO clrscr();"

c - 使用 Realloc 调整字符大小 **

c - 在 C 中处理使用 fork() 创建的子进程

java - 使用 Eclipse : Could not find the main class: UI. MainWindow 创建的 Jar 文件。程序将会退出

c++ - 将 dll 转换为 lib 以进行静态链接?

c - 如何在 Linux 中向 Bash 添加运算符?

java - Java 中的 String[] args 有什么意义?

java - 线程 "main"中出现异常 - NoClassDefFoundError

C++ 存储调用 main 的次数

java - 线程 "main"java.lang.NullPointerException 中的 logResponse 异常