c++的函數需要聲明才能再寫他的定義,聲明可以寫多次,如果執行在main之前可以不寫,全寫不會犯錯,現在看好像c++的函數定義裏沒有out
聲明:int max(int a,int b); **寫到.h後綴的頭文件中**
int main()
{
int a; int b;
max(a,b)
}
定義:**寫到.cpp後綴的源文件中**
int max(int a,int b)
{
return a;
}
在源文件中,要在上面寫頭文件的關聯
#include <iostream>
using namespace std;
#include"頭文件名.h"
在頭文件中,上面要寫
#include <iostream>
using namespace std;
指針
簡單來說,指針就是個地址
如何定義一個指針
int a=10;
\指針定義的語法:數據類型 *指針變量名;
int * point;
讓指針記錄變量a的地址
point=&a;(&是取址符號)
使用指針
通過解引用的方式來找到指針指向的內存
* point(指針前加 * 代表指向p內存的一個數據)
\int *p=&a; 定義一個指向a變量的指針p
空指針
用來給指針變量進行初始化,且不可訪問,因爲0~255的內存編號是系統佔用的,null代表爲0的空間
int *p=NULL;
野指針
指針變量指向非法的內存空間,直接指向地址,不可以訪問,會報錯
常量指針
即const修飾指針,可以修改指針的指向,但是指針指向的值不能改
(不知道這個常量有啥用..)
值傳遞
形參改變不會造成實參的改變,函數使用變量需要傳遞變量的地址的方式來改變實參
例子:
`void swap (int a,int b){a=b};
void swapp(int *p1,int *p2){*p1=*p2};
int main ()
{
int a=10;
int b=100;
swap(a,b);(a執行完後仍然等於10不發生改變)
swapp(&a,&b)****(a執行完後a=b)
}
`