C语言多文件编程
现在先写一个简单的程序。学过C语言的你都能看懂。
在DEV-C++下编辑下面的程序:
[cpp] view plaincopyprint?
1. #include 2. #include 3. void func1(); //函数声明 4. void func2(); //函数声明 5. void func3(); //函数声明 6. int main() 7. { 8. printf(\"hello world!\\n\"); 9. func1(); 10. func2(); 11. func3(); 12. system(\"pause\"); 13. return 0; 14. } #include 5. } 6. void func2() 7. { 8. printf(\"我是函数2\\n\"); 9. } 10. void func3() 11. { 12. printf(\"我是函数3\\n\"); 13. } //函数实现void func1() { printf(\"我是函数1\\n\"); }void func2() 这个程序够简单吧!运行结果如下: 这个程序所有的函数实现都在同一文件中,代码量很少,所以你能够看懂。假如代码量很多时,你会发现这样的程序调试很费力。 为了体现C语言模块化的编程思想,我们可不可以将上面3个函数func1,func2和func3的实现单独放在一个文件中呢?答案是肯定的。 初级方案:3个函数的声明和实现放到一个文件中,再在main函数中调用。 在DEV-C++中编辑一个.h文件(这里命名为myfile.h)并保存。(编辑完一定要保存哦!) [cpp] view plaincopyprint? 1. //myfile.h 2. void func1() 3. { 4. printf(\"我是函数1\\n\"); 5. } 6. void func2() 7. { 8. printf(\"我是函数2\\n\"); 9. } 10. void func3() 11. { 12. printf(\"我是函数3\\n\"); 13. } //myfile.hvoid func1(){ printf(\"我是函数1\\n\"); }void func2() 再编辑我们的main.c文件。(注意main.c文件要和我们的myfile.h文件放在同一目录下) [cpp] view plaincopyprint? 1. //main.c 2. #include 3. #include 4. #include\"myfile.h\" //注意,这里包含了我们自己写的头文件 5. int main() 6. { 7. printf(\"hello world!\\n\"); 8. func1(); 9. func2(); 10. func3(); 11. system(\"pause\"); 12. return 0; 13. } //main.c #include 6. { 7. printf(\"我是函数1\\n\"); 8. } 9. void func2() 10. { 11. printf(\"我是函数2\\n\"); 12. } 13. void func3() 14. { 15. printf(\"我是函数3\\n\"); 16. } 17. int main() 18. { 19. printf(\"hello world!\\n\"); 20. func1(); 21. func2(); 22. func3(); 23. system(\"pause\"); 24. return 0; 25. } //main.c #include mian.c文件:放main函数 myfile.h:3个函数的声明 myfile.c:3个函数的实现 在dev-c++下建一个工程:(一定要建工程) 建好工程后,我们可以看到,系统已经为我们在mian.c文件中编辑好了部分代码,同时工程1目录下也只有一个mian.c文件 这时 我们再新建myfile.h文件 在弹出来的对话框中选择Yes 接下来重命名 在弹出的对话框中,输入myfile.h 接下来在myfile.h中输入3个函数的声明: [cpp] view plaincopyprint? 1. //这里只有3个函数的声明 2. void func1(); 3. void func2(); 4. void func3(); //这里只有3个函数的声明 void func1(); void func2(); void func3(); 接下来安装上面的方法新建myfile.c文件 注意重命名时输入myfile.c,并在myfile.c中输入3个函数的实现 最后修改mian.c文件中的代码 最后点击编译运行,结果如下: 简单吧!一个简单的多文件工程就产生了。 代码量很少的时候不需要这么做,这里仅仅是为了演示! 其实多文件编程还涉及到作用域、命名空间、程序的编译过程。这里只是一个初级版本。 学无止境嘛呵呵 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- yrrf.cn 版权所有 赣ICP备2024042794号-2
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务