C语言中: 头文件名可以由用户指定,其后缀不一定用".h" 。我用#include <stdio.a>为什么出错啊

C语言中: 头文件名可以由用户指定,其后缀不一定用".h" 。我用#include <stdio.a>为什么出错啊

如果你有自己定义的库文件,而且你的文件跟你的实现文件,即.c 文件在同一个目录下,那么可以include "mylib.h" 。另外,头文件的确不一定非要.h, 但为了规范,头文件最好为.h,实现文件为.c 或者.cpp, 如果你将来要做项目的话,那么在Makefile中也容易操作,别人通过你的后缀也容易就能看出你这个文件是个什么性质的,这些可能你现在体会不到,你几年后会明白我的意思。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-07-02
#include<stdio.h>在系统的库中作为头文件,里面囊括了很多信息。改为你的用法,文件调试时需要这些信息时就不能从库中调出这个头文件的信息。有的编译环境这时候会把所有的库文件都弹出来让你对比(那是针对其他不常用的头文件,系统也不确定是否是自己的库有问题,而<stdio.h>这个最常用所以只会报错)。如果你去库里面把里面也给改了,以后你的编译器就认准
<stdio.a>了。但别人就可能看不懂了,毕竟写程序不仅要实用,也要让使用者容易理解。
第2个回答  2012-07-02
stdio.a 不是文本文件。 而是个静态库文件,里面包含标准输入输出函数。这个是在链接的时候才用的,而头文件是在预处理的时候用的。include 的 括号里可以不是 .h 文件, 还可以是 .c .cpp 等文件。只要是 文本格式、语法格式正确 都可以
第3个回答  2012-07-02
#include <stdio.a>会从系统文件夹中查找这个文件。
如果stdio.a是你自己写的话,你可以使用#include "stdio.a"
这样编译器会从你的源代码文件所在的文件夹中查找stdio.a这个文件,你只要把stdio.a和你的源代码文件放在同一个文件夹下就可以了。本回答被网友采纳
第4个回答  2012-07-02
<>是从系统指定的路径下查找
你可以用" "来表示用当前目录下查找,如果当前目录下找不到再去系统指定路径下查找
" "可以填绝对路径与相对路径
相似回答