在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
p186~p188: 函数声明
2、函数的接口:返回类型 + 函数名 + 形参类型
3、为什么要在头文件中进行函数声明???在源文件中定义?暂时理解到,这么做可以增强可读性。
4、含有函数声明的头文件应该被包含到定义函数的源文件中。(例如:#include "diy.h")
>源文件内容(三个文件放在同一个文件夹下面。) fact.h int fact(int val); fact.cpp #include "fact.h" int fact(int val) { if (val == 1) return 1; return val * fact(val - 1); } factMain.cpp #include <iostream> #include "fact.h" using namespace std; int main() { cout << fact(3) << endl; // output=6 return 0; } >开始编译 ! 1)一起编译的方法 $ g++ factMain.cpp fact.cpp -o lovecpp -std=c++11 $ lovecpp 6 2)真*分离式编译 第一步 $ g++ -c factMain.cpp
$ g++ -c fact.cpp
执行这两个操作后会生成fact.o、factMain.o,接下来要把object code(*就是.o文件)链接成可执行文件。 $ g++ factMain.o fact.o -o lovecpp 执行后生成lovecpp.exe。这样分几步的好处是:如果修改了其中一个源文件,就重新编译改动的就好了。
6.10 #include <iostream> using namespace std; void swap(int *p, int *q) { int temp; temp = *p; *p = *q; *q = temp; } int main() { int a = 3, b = 4; cout << a << " " << b << endl; swap(a , b); // 交换之后 cout << a << " " << b << endl; /* output: 3 4 4 3 */ return 0; } 修正: #include <iostream> using namespace std; void swap(int *p, int *q) { int temp; temp = *p; *p = *q; *q = temp; } int main() { int a = 3, b = 4; cout << a << " " << b << endl; swap(&a , &b); // 交换之后 cout << a << " " << b << endl; /* output: 4 3 */ return 0; } 但是上一个程序也有正确输出?? |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论