tft每日頭條

 > 生活

 > c語言函數怎麼看數據類型

c語言函數怎麼看數據類型

生活 更新时间:2024-12-22 15:00:12

c語言函數怎麼看數據類型?typedef void (*IapFun)(void); jump2app = (iapfun) * (vu32 *)(appxaddr 4); //用戶代碼區第二個字為程序開始地址(複位地址) MSR_MSP(*(vu32 *)appxaddr); //初始化APP堆棧指針(用戶代碼區的第一個字用于存放棧頂地址) jump2app(); //跳轉到APP.,接下來我們就來聊聊關于c語言函數怎麼看數據類型?以下内容大家不妨參考一二希望能幫到您!

c語言函數怎麼看數據類型(如何看待c語言函數指針typedef)1

c語言函數怎麼看數據類型

typedef void (*IapFun)(void); jump2app = (iapfun) * (vu32 *)(appxaddr 4); //用戶代碼區第二個字為程序開始地址(複位地址) MSR_MSP(*(vu32 *)appxaddr); //初始化APP堆棧指針(用戶代碼區的第一個字用于存放棧頂地址) jump2app(); //跳轉到APP.

對這段代碼有種熟悉的陌生感,遂特此記錄,以供日後察看.

typedef的意義

typedef int a[10]; // a 類型是 int[10];(存放int型數據的數組) a arr; // 定義一個數組:int arr[3]; typedef void (*p)(void); //p 類型是void ( * )void p A; //是指void(*A)(void);

語法上typedef屬于存儲類聲明說明符。a[10]不是int的别名,(*p)(void)不是void的别名。上面的語句把a聲明為具有10個int元素的數組的類型别名,p是一種函數指針的類型别名。定義一個函數指針類型。比如原函數是

void func(void);

那麼定義的函數指針類型就是

typedef void (*Fun)(void);

然後用此類型生成一個指向函數的指針:

Fun func1;

當func1獲取函數地址之後,那麼你就可以向調用原函數那樣來使用這個函數指針:

func1(void);

函數指針對象賦值用法

兩種用法

typedef void (*IapFun)(void); //定義函數指針 void func(void); //定義函數 IapFun fun = func; //為函數指針對象賦值 fun(); //這裡的fun()其實就相當于跳轉到了func()裡

typedef void (* IapFun)(void); //定義函數指針 IapFun jump2app; //定義函數指針對象 jump2app=(IapFun) * (vu32*)(appxaddr 4); //為函數指針對象賦值 appxaddr為函數指針地址,例如0x08000000 jump2app(); //調用函數

來自技術讓夢想更偉大

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved