在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

常見的一級指針參數有什么作用

CHANBAEK ? 來源:EEMaker電子創客營 ? 作者: DK45王 ? 2023-10-24 14:35 ? 次閱讀

常見的一級指針參數

先來看一個最常用函數模型,函數func()參數為一個uint8_t 的指針類型,那這個函數有什么作用?

uint8_t data1[3];
void func(uint8_t *p)
{
	p[0]=0x01;
	p[2]=0x02;
}
void main()
{
	uint8_t *p1=data1;
	func(data1);
}
  • 在main函數中先定義了一個指針p1,然后把p1指向了一個數組data1。
  • 把p1作為參數傳遞進函數func()
  • 結果也很容易猜到,就是data1中的值在func運行時被改變了,分別等于0x01,0x02

那我們就不難理解,指針作為參數傳遞進去,而函數內部就可以修改這個指針所指向的數據。如下圖所示:

圖片

而這個就是一級指針,簡單的可以看函數定義的參數帶一個 “*” 號就是一級指針。p1就是一個一級指針傳遞進去,而傳遞進去以后就可以修改這個一級指針所指向的地址的數據,也就是data1。

假如我想修改p1所指向的地址,該怎么辦?

如下如所示,現在我想讓p1不再指向data1,而是指向data2

圖片

這個很明顯用上面的一級指針作為參數已經實現不了,它只能修改p1所指向的地址的數據,而現在是要修改p1本身讓他指向data2。有的小伙伴可能已經能猜到,p1指向data1我們可以修改data1,那再用一個指針指向p1不就是可以修改p1了。

圖片

那這里我們就可以定義一個指針的指針pp1,讓他指向p1,這樣把pp1傳入到函數中,函數內部就可以修改p1的值了。
代碼如下:

uint8_t data1[3];
uint8_t data2[3];
void func2(uint8_t **pp)
{
	*p=data2;
}
void main()
{
	uint8_t *p1=data1;
	uint8_t *pp1=&p1;
	func(pp1);
}
89101112

這里傳入的pp1就是一個二級指針,而func2的參數也是帶兩個星號。
那二級指針也就不難理解了,他可以修改指向的指針,也就是修改pp1指向的指針p1的值,讓p1可以指向另外一塊內存。
那實際上一般在使用的時候可能大部分都會省略掉這個pp1而使用更簡便的寫法:

void main()
{
	uint8_t *p1=data1;
	func(&p1);
}
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 參數
    +關注

    關注

    11

    文章

    1867

    瀏覽量

    32883
  • 函數
    +關注

    關注

    3

    文章

    4371

    瀏覽量

    64277
  • 指針
    +關注

    關注

    1

    文章

    484

    瀏覽量

    71031
  • main
    +關注

    關注

    0

    文章

    38

    瀏覽量

    6355
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    詳解C語言二指針三種內存模型

    指針相對于一級指針,顯得更難,難在于指針和數組的混合,定義不同類型的二
    發表于 11-02 09:35 ?482次閱讀

    嵌入式C語言二指針

    指針相對于一級指針,顯得更難,難在于指針和數組的混合,定義不同類型的二
    發表于 11-04 10:08 ?745次閱讀

    iMatrix平臺中如何使用一級菜單

    一級菜單(menu:firstMenu)1.1說明參數說明: showNum:可選。一級菜單顯示的數目。鏈接的url在【系統構建平臺】à【菜單管理】中修改或添加。 1.2使用例子,其頁面顯示如圖:
    發表于 05-29 10:43

    基于變速積分的PID一級倒立擺研究

    本文建立一級倒立擺的數學模型,闡述了變速積分的PID優點,對一級倒立擺的變速積分的PID控制進行仿真,對比傳統PID控制明顯的性能改進。
    發表于 02-03 17:14 ?73次下載
    基于變速積分的PID<b class='flag-5'>一級</b>倒立擺研究

    一級倒立擺的PID控制設計

    一級倒立擺的PID控制設計
    發表于 11-08 18:51 ?65次下載

    Mybatis緩存之一級緩存

    本文主要講mybatis的一級緩存,一級緩存是SqlSession級別的緩存。mybatis提供查詢緩存,用于減輕數據壓力,提高數據庫性能。mybaits提供一級緩存,和二緩存。
    發表于 11-27 20:44 ?1299次閱讀
    Mybatis緩存之<b class='flag-5'>一級</b>緩存

    消防工程師的一級和二哪些區別

    不少考生對于消、二消些困惑:不明白一級消防工程師和二消防工程師到底
    的頭像 發表于 08-27 16:32 ?1.4w次閱讀

    C語言二指針的用法與原理

    提到指針,我們都知道指針是用來存儲個變量的地址。所以,當我們定義了個指向指針指針的時候(p
    發表于 07-02 14:52 ?4112次閱讀
    C語言二<b class='flag-5'>級</b><b class='flag-5'>指針</b>的用法與原理

    一級/二/三配電箱的作用及用途

    配電箱的一級、二、三箱是啥意思?這是相對而言的問題。我們做個假設:個新建的小區引進條10kV進線,建了
    發表于 02-11 09:47 ?4955次閱讀

    配電箱的一級、二保護措施哪些

      一級保護通常指對電路和設備進行基本的短路保護和過載保護,以確保電路和設備的正常運行。般采用斷路器、熔斷器、載流開關等設備來實現,具有快速短路保護和過載保護功能,以防止電路和設備燒毀或發生其他嚴重事故。常見
    發表于 04-04 18:02 ?7970次閱讀

    C語言中一級指針、二指針和三指針

    一級指針的用法其實是取數據的地址,以此類推,二指針就是取一級指針的地址,也可以表示
    發表于 05-19 17:30 ?2438次閱讀
    C語言中<b class='flag-5'>一級</b><b class='flag-5'>指針</b>、二<b class='flag-5'>級</b><b class='flag-5'>指針</b>和三<b class='flag-5'>級</b><b class='flag-5'>指針</b>

    mybatis一級緩存和二緩存的原理

    MyBatis是種輕量級的持久化框架,它提供了一級緩存和二緩存的機制來優化數據庫操作性能。一級緩存是默認開啟的,而二緩存需要手動配置啟
    的頭像 發表于 12-03 11:55 ?1470次閱讀

    一級放大器和二放大器哪個好

    一級放大器和二放大器是電子電路中常見的兩種放大器,它們在電子設備中起到放大信號的作用一級放大器和二
    的頭像 發表于 12-28 10:48 ?6165次閱讀

    一級配電箱的作用哪些

    在電力系統的構建中,一級配電箱作為整個系統的起點,扮演著至關重要的角色。它不僅是電源輸入的直接接收者,更是電能分配與控制的核心樞紐。本文將探討一級配電箱的各項功能。 一級配電箱的電
    的頭像 發表于 09-20 17:13 ?1031次閱讀

    一級、二和三配電箱的區別

    配電箱作為電能分配與控制的核心設備,發揮著至關重要的作用。根據其在電力系統中的位置和作用不同,配電箱可分為一級、二和三。本文將深入探討這
    的頭像 發表于 09-20 17:21 ?5050次閱讀
    主站蜘蛛池模板: 欧美xingai| 亚洲一区二区三 | 国产香蕉在线视频 | 91av视频| 男人的天堂色偷偷 | 亚洲午夜大片 | 中文字幕va一区二区三区 | 午夜资源网 | 天天操天天草 | 亚洲性人人天天夜夜摸 | 午夜在线免费视频 | 天天干狠狠操 | 亚洲大色 | 狠狠的操 | 人人插视频 | 日本69sex护士www | 伊人网99| hs网站免费| 视频一区二区在线播放 | h视频免费观看 | 国产乱码精品一区二区三 | 91操碰| 让她爽的喷水叫爽乱 | 欧美性天天影院 | 久久久精品免费视频 | 亚洲成人免费观看 | 日韩一级视频免费观看 | 色花堂国产精品首页第一页 | 日本xx69| 欧美a色爱欧美综合v | 与子乱刺激对白在线播放 | 天天干夜夜艹 | 激情 婷婷| 国产婷婷综合在线精品尤物 | 77ee成人 | 天天操夜夜操夜夜操 | 亚洲人成亚洲人成在线观看 | 丁香六月婷婷在线 | 日韩一区二区三区免费 | 免费网站看av片 | 夜夜精品视频 |