天天看點

C/C++基礎-函數

1.函數

函數是一組一起執行一個任務的語句。每個C程式都至少有一個函數,即主函數main(),所有簡單的程式都可以改其他額外的函數。

函數的聲明:

return_type function_name(parameter list) {

   body of the function

}

C語音由上到下加載,函數被執行前,需要通過頭檔案(相當于接口,解決耦合問題)聲明函數

C語音以函數為基礎,面向過程,Java以對象為基礎

2.指針函數

指針函數是指帶指針的函數,即本質是一個函數。函數傳回類型是某一個類型的指針

如 : 類型表示 * 函數名(參數表)

int* f(x, y);

3.函數指針

函數指針是指向函數的指針變量,即本質是一個指針變量

如:

int(*func) (int x); // 聲明一個函數指針, 聲明變量,變量是函數

func = func2; // 把函數 指派給 func, 函數對應的位址的指派

func();

#include <iostream>

#include "fuc.h"

void (*funcp)(int* a, int* b);

void point_func(int *a,int *b)

{

    *a = 200;

    printf("函數指針\n");

}

int* int_add_func(void* wParam) // void 無符号類型-> Object

{

    printf("指針函數\n");

    int b = 10;

    int *p = &b;

    return p;

}

int main()

{

    int a = 10;

    int_add_func(&a);

    int b = 20;

    funcp = point_func;

    funcp(&a, &b);

    printf("a值 %d",a);

}

int func(void) {

    printf("函數");

    return -1;

}

int func(void* pathName, int a) {

    printf("函數");

    return -1;

}