是否可以在不使用头文件的情况下编写c程序

问题描述:

是否可以在不使用头文件的情况下编写c程序?如果是这样,怎么样?是否可以在不使用头文件的情况下编写c程序

+0

你在一个标准库的环境是指用于同为printf的截图,即操作系统,或运行在裸机上,例如一个内核还是引导程序? – Rup 2011-02-03 10:30:52

+0

@Rup:为什么这很重要? – 2011-02-03 10:45:30

当然。

头文件只是一个被包含在某些源文件中的文件,当您包含一个文件时,您只需复制它的内容。

你可以在没有任何#include的情况下编写任何你想要的程序,但是你必须手动将你需要的东西放到源文件中。

当然:

int main() { 
    return 0; 
} 

甚至:

int printf(const char *format, ...); // could be copied from stdio.h 

int main() { 
    printf("Hello, world!\n"); 
    return 0; 
} 

#include指令有效,只是包括源文件中的头文件的内容。

绝对是的,你甚至可以inlinme的函数原型,你可能需要在C文件本身

是有可能不写头文件一个简单的程序,但为什么要这么做?

头文件对于在多个文件或模块之间共享定义,常量,函数原型等很有用。

我试图写在c中可能的最短代码,所以我试图从源代码中删除头文件。我惊讶甚至一个程序与printf编译只是一个警告,并成功地运行。如何发生? printf(“Hello World \ n”);}};}};}};}} }

是的,你可以WIRTE程序没有的#include,但它会增加编程的复杂性意味着用户不用写下来,他想use.It全手动功能,需要花费大量的时间和小心注意,而编写长的程序。是的,简单的程序就像上面给出的没有任何库函数调用一样写没有问题。

这是可能的,但通过一切手段,避免不使用它,如果没有必要。

#include<"filename"> 

将帮助您实施和使用本文件中的函数, 即

#include< stdio.h> 

将帮助我们使用目前内置功能,在stdio.h文件 - printfscanf

当你在你的程序中不使用#include< stdio.h>时,它仍然不会引起任何问题,只有当你使用printf或scanf时它可能会导致程序变为ge在编译时提供警告(隐式声明函数printf。)在同一

更多详细信息,下面的链接是不指定#include<stdio.h>

image