C++ 保存在两个cpp文件中函数,怎样声明才能互相调用?
2012-07-25 11:30
429 查看
主函数所在cpp: #include "menu_1.cpp" #include "menu_2.cpp" void main(){ char choice; do{ choice=_getch(); }while(choice!='0'&&choice!='1') switch(choice) case '0': menu_1(); case '1': menu_2(); } menu_1()所在menu_1.cpp: void menu_1(){ //其他操作 char choice; do{ choice=_getch(); }while(choice!='0'&&choice!='1') switch(choice) case '0': exit(0); case '1': menu_2(); } menu_2()所在menu_2.cpp: void menu_2(){ //其他操作 char choice; do{ choice=_getch(); }while(choice!='0'&&choice!='1') switch(choice) case '0': exit(0); case '1': menu_1(); } 由于作业需要,必须将menu_1和menu_2放在两个cpp文件中,但按我那样在主函数前声明的话,编译时会在menu_1.cpp中menu_2();那一行显示无法识别标识符menu_2(),哪位老虾帮帮忙,指点下该怎么声明? 编辑环境是VisualStudio2008
把#include "menu_1.cpp"#include "menu_2.cpp"这两句换成extern void menu_1();extern void menu_2();在menu_1.cpp开头加上extern void menu_2();在menu_2.cpp开头加上extern void menu_1();还有,你的代码中有语法错误void main(){char choice;do{choice=_getch();}while(choice!='0'&&choice!='1'); // 这里要加分号switch(choice){ // switch后面要跟大括号case '0':menu_1();break; // 这里要加breakcase '1':menu_2();break;default:;}}main(), menu_1(),menu_2(),都是如此。此外,不知道你的"menu_1.cpp""menu_2.cpp"是否包含了_getch,exit的头文件要记得包含上
相关文章推荐
- extern C配合__cplusplus实现CPP文件和C文件的函数互相调用
- C/C++文件中函数互相调用
- C++第六周任务5:解决用一个项目多个文件的方式实现,其中两个类的声明放在一个.h文件中,每个类的成员函数分别放一个文件,main()函数用一个文件。体会这样安排的优点。
- 关于Qt 两个.cpp文件相互调用各自的函数
- C/C++文件中函数互相调用
- [原创]Enterprise Architecture V7.5 C++代码生成时,头文件中函数声明没有注释,CPP中函数定义却有注释。
- C++将.h和.cpp分成两个文件的原因和好处
- 在C++ 程序中调用被 C编译器编译后的函数,为什么要加 extern “C”声明?
- lua 进阶3--lua文件中调用C++函数
- C编程笔录(一)1.0: 在C编程中,函数的声明为什么都习惯的写在头文件中,然后在需要调用的地方使用#include来包含?
- VS中c++文件调用c 函数 ,fatal error C1853 预编译头文件来自编译器的早期版本号,或者预编译头为 C++ 而在 C 中使用它(或相反)
- C++ 两个包含类互相调用彼此的类成员变量和方法
- 怎样在C中调用C++函数
- C++中类型注册有的时候,函数找不到定义,可能是相应的头文件中防止重定义的声明,还是用原来的,没有做相应的更新
- C++ 在.h文件中声明,在.cpp文件中定义 模板函数和模板类
- C++中的freopen()函数实现比较两个文件的内容是否相同
- C++与C中的函数互相调用的处理
- 考试题:在C++ 程序中调用被 C 编译器编译后的函数,为什么要加 extern “C”声明
- VS中c++文件调用c 函数 ,fatal error C1853 预编译头文件来自编译器的早期版本,或者预编译头为 C++ 而在 C 中使用它(或相反)
- C文件调用C++文件里的函数