求求你了,C编程问题

来源:百度知道 编辑:UC知道 时间:2024/05/29 07:40:54
最近为学C编程,已经感觉力有不足了。其中有一个困惑,我到现在也没有弄清楚。就是关于API函数,我们调用API函数时,只要引用头文件就可以调用了,这就令我很不理解,我看了头文件,里面只有声明,没有函数体,那么函数体在哪里呢?后来,我查资料,得知API函数在DLL里,但是我还是迷惑,编译器是如何找到API这个函数体的呢?我们在程序中又没有告诉它API函数体的位置,头文件里只有声明,也没有告诉编译器API函数体在DLL里,那么编译是怎么加载API函数体的呢?我真的不能理解,很困惑,要疯掉了。请知道的人告诉我,我真的万分感谢,万分感谢!

你应该知道api函数有4种存放方式
1 h+ cpp 这样的API全是源代码
2 仅h 一般是一些小型的函数库 他连cpp都没有
3 h + lib 他把cpp内容编译到lib里了 你看不到大部分代码了
4 h + lib + dll,运行时你的exe目录下需要相应的dll文件,API都在DLL内,但是表明DLL内有什么的,还是h和lib,但该lib很小

方案3,4需要在你的c工程里加入相应的h和lib
有时你觉得什么都没加是因为编译器有提供默认的库

...看过一些录像后发现一个很残酷的问题...很多函数体好像要自己写...