在C语言中开始不写头文件算不算错,好像不写程序也能运行
发布网友
发布时间:2023-09-28 23:46
我来回答
共5个回答
热心网友
时间:2024-12-11 20:15
头文件的目的是提供函数的声明,这样编译器在调用这个函数的地方就可以进行参数检查,根据声明信息生成正确的机器指令。如果已经有了这个函数的声明,比如你所有的函数都是在一个模块里的,并且被调用的函数的实现都在调用它的函数的前面,当然不写头文件也能编译通过。
把声明和实现分开,分别写成头文件和.c文件的好处是很清晰,别人要用你这个函数只要#include一下就可以了,所以如果是公共模块,还是写头文件好一些。
热心网友
时间:2024-12-11 20:16
C语言开发中通常是包含多个c文件的。
在一个c语言工程中,除了包含main函数的文件(假设main.c),用户可能还将其他的函数分门别类写在不同的文件中,如:lib1.c lib2.c ...(同时也会定义 lib1.h 、lib2.h (h文件里面其实就是函数的申明))
如果,在某一个文件中要用到其它的文件中的函数,就需要通过#include "lib1.h",将相关的函数申明包含进去。这样就告诉编译器,这个函数在其他文件中
而printf() 、scanf()等等(这些函数就申明在 stdio.h文件中) ,就是C语言中已经写好的、标准的 函数,其性质跟用户自己写的函数(lib1.c)是一样的。
所以一般需要将stdio.h包含进去,再如果要用到 sin() 、cos() 等等数学函数,就要包含math.h
!!像你说的包不包含都可以运行,那是因为你使用的C语言开发环境,在编译的时候,已经自动替你将相关的h文件包含进去了。
这只是软件为了方便用户,提供一个特殊功能。
严格意义上,是需要在开始写头文件
热心网友
时间:2024-12-11 20:16
TURBO C 2.0编译系统中如果用到输入输出函数是可以不写,用到其他函数就要写对应得头文件,但是TURBO C 3.0中都要写。
你最好是写起嘛,这是一种规范,反正又不累!
热心网友
时间:2024-12-11 20:17
那是你的软件有那功能帮你补上,按语法来说肯定是错的,
但是呢,软件当然就是为了让你省时省力啊,一般的stdio,h可以不写,但是其他的比如math,h还有自己定义的还是要写的
热心网友
时间:2024-12-11 20:17
你指的是 #include "XXXXXX.h" 这类的吗.
这行命令实际就是引用 XXX.h 头文件中的内容,如果你不需要用头文件里面的内容,不打这行命令也可以