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

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

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

3天內不再提示

void指針簡述

嵌入式應用開發 ? 來源: 嵌入式應用開發 ? 作者:嵌入式應用開發 ? 2022-09-09 08:57 ? 次閱讀

為何在這里單獨提到空指針類型呢?主要是因為該指針類型很特殊。void類型很容易讓人想到是空的意思,但對于指針而言,其并不是指空,而是指不確定。在很多時候指針在申明的時候可能并不知道是什么類型或者該指針指向的數據類型有多種再或者程序員僅僅是想通過一個指針來操作一段內存空間。這個時候可以將指針申明為void類型。但是問題來了,由于void類型原因,對于確定的數據類型解引時,編譯器會根據類型所占的空間來解引相應的數據,例如int p,那么p就會被編譯器解引為p指針的地址的4個字節的空間大小。但對于空指針類型來說,編譯器如何知道其要解引的內存大小呢?先看一段代碼:

#include 

int main(int argc, char **argv)
{
    int a=10;
    void *p;
    p=&a;
    printf("p=%d\n",*p);
    return 0;
}

編譯上面的程序會發現,編譯器報錯,無法正常編譯。

poYBAGMZ4nKAefrEAADxquWvkvQ554.png

這說明編譯器確實是在解引時無法確定*p的大小,因此這里必須告訴編譯器p的類型或者*p的大小,如何告訴呢?很簡單,用強制類型轉換即可,如下:

*(int*)p

這樣上面的程序就可以寫為如下:

#include 

int main(int argc, char **argv)
{
    int a=10;
    void *p;
    p=&a;
    printf("p=%d\n",*(int*)p);
    return 0;
}
pYYBAGMZ4qCABRhYAAAofCNx7Sg596.png

void指針沒有指定類型的指針即指針只有地址數據屬性,不具備解引時的空間 大小屬性。

審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 指針
    +關注

    關注

    1

    文章

    484

    瀏覽量

    71041
  • void
    +關注

    關注

    0

    文章

    23

    瀏覽量

    10050
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    函數指針的使用簡述

    函數指針在Linux內核和C語言開發中用的非常多,而且在設計操作系統的時候也會用到,因此這里將詳細講解函數指針。既然函數指針也是指針,那函數指針
    的頭像 發表于 09-09 08:56 ?2225次閱讀
    函數<b class='flag-5'>指針</b>的使用<b class='flag-5'>簡述</b>

    【設計技巧】指針的使用注意事項:空指針指針賦值、void *指針

    的類型多么復雜,比如一個特別大的結構體,它的指針和一個 char型指針的大小本質上是一樣的,因為指針就是起始地址。 正式由于這個原因,(void )型
    發表于 08-20 08:30

    什么是void指針?void指針有何功能

    [導讀] 要比較靈活的使用C語言實現一些高層級的框架時,需要掌握一些進階編程技巧,這篇來談談void指針的一些妙用。測試環境采用 IAR for ARM 8.40.1什么是void指針
    發表于 02-21 06:01

    C語言voidvoid指針深層探索

    1.概述 本文將對void關鍵字的深刻含義進行解說,并詳述voidvoid指針類型的使用方法與技巧。 2.void的含義
    發表于 09-21 11:36 ?166次下載

    深入了解void指針背后的機理

    當使用關鍵字void聲明指針變量時,它將成為通用指針變量。任何數據類型(char,int,float等)的任何變量的地址都可以賦值給void指針
    發表于 05-06 09:49 ?1467次閱讀

    淺談void指針的高階用法

    要比較靈活的使用C語言實現一些高層級的框架時,需要掌握一些進階編程技巧,這篇來談談void指針的一些妙用。測試環境采用 IAR for ARM 8.40.1 什么是void指針
    的頭像 發表于 08-09 15:54 ?1873次閱讀
    淺談<b class='flag-5'>void</b> 型<b class='flag-5'>指針</b>的高階用法

    void指針的高階用法,你掌握了嗎?

    關注+星標公眾號,不錯過精彩內容轉自 | 嵌入式客棧要比較靈活的使用C語言實現一些高層級的框架時,需要掌握一些進階編程技巧,這篇來談談void指針的一些妙用。測試環境采用 IAR for ...
    發表于 12-02 12:36 ?8次下載
    <b class='flag-5'>void</b> 型<b class='flag-5'>指針</b>的高階用法,你掌握了嗎?

    STM32編程:void指針高階用法舉例,設計一個通用掉電存儲子系統

    [導讀] 要比較靈活的使用C語言實現一些高層級的框架時,需要掌握一些進階編程技巧,這篇來談談void指針的一些妙用。測試環境采用 IAR for ARM 8.40.1什么是void指針
    發表于 12-27 18:47 ?10次下載
    STM32編程:<b class='flag-5'>void</b><b class='flag-5'>指針</b>高階用法舉例,設計一個通用掉電存儲子系統

    STM32編程:void指針高階用法

    [導讀] 要比較靈活的使用C語言實現一些高層級的框架時,需要掌握一些進階編程技巧,這篇來談談void指針的一些妙用。測試環境采用 IAR fo...
    發表于 02-07 11:14 ?2次下載
    STM32編程:<b class='flag-5'>void</b><b class='flag-5'>指針</b>高階用法

    C語言-void類型作為萬能指針類型

    空類型`。 void abc; //這是錯誤的 但是`void`是可以定義指針的,`void*`表示萬能型指針類型,可以與任何
    的頭像 發表于 08-14 10:04 ?2135次閱讀

    指針長度簡述

    我們使用這樣的方式來定義一個指針: Type *p; 我們說 p是指向type類型的指針 ,type可以是任意類型,除了可以是char,short, int, long等基本類型外,還可以是指針類型
    的頭像 發表于 09-29 18:42 ?4373次閱讀
    <b class='flag-5'>指針</b>長度<b class='flag-5'>簡述</b>

    一文揭秘C語言的void指針

    void *表示一個“不知道類型”的指針,也就不知道從這個指針地址開始多少字節為一個數據。和用int表示指針異曲同工,只是更明確是“指針”。
    的頭像 發表于 02-02 17:18 ?1946次閱讀

    什么是void指針

    C語言中,*類型就是指針類型,比如 int *p,double *q,雖然是不一樣的指針,但是大小卻一樣sizeof(p) == sizeof(q),因為它們都是同一種類型*類型的。C語言是強類型的語言,對類型的區分十分嚴格,不同的類型占據的空間大小不同,地址偏移量也會不
    的頭像 發表于 02-13 15:02 ?1636次閱讀

    void指針的特性介紹

    普通類型指針,包含兩個方面,一個是指向此類型變量的地址,另外一個是指向變量的長度。
    的頭像 發表于 03-14 14:44 ?1129次閱讀

    如何理解C++中的void

    首先void*中的void代表一個任意的數據類型,"星號"代表一個指針,所以其就是一個任意數據類型的指針
    的頭像 發表于 03-30 15:01 ?4713次閱讀
    如何理解C++中的<b class='flag-5'>void</b>?
    主站蜘蛛池模板: 精品国内一区二区三区免费视频 | 色综合天天综合网看在线影院 | 免费在线观看的视频 | 久久久鲁| 国产精品免费久久久久影院 | 在线观看www日本免费网站 | 天天操操操操操操 | 天天干天天曰天天操 | 夜色321看片资源站 夜色sese | 精品精品国产理论在线观看 | 国产综合13p | 欧美中出在线 | 日本三级成人中文字幕乱码 | 日韩啪啪网| 色多视频 | 亚洲午夜精品在线 | 亚洲第一区视频 | 日日干狠狠干 | 2020国产v亚洲v天堂高清 | 亚洲97| 一级大片免费看 | 性 色 黄 一级 | 日本黄色大片免费 | 久久99精品久久久久久秒播 | 亚洲一区在线播放 | 韩国三级理论在线观看视频 | 亚洲狠狠网站色噜噜 | h国产在线 | 国产香蕉98碰碰久久人人 | 天天干天天做天天操 | 欧美日韩国产另类一区二区三区 | 亚洲欧美色鬼久久综合 | 久久久免费精品视频 | 亚洲午夜久久久精品影院 | 午夜视频福利在线 | 孩交啪啪网址 | 国产乱码1卡一卡二卡 | 伊人久久精品成人网 | 国产福利资源在线 | 日本 韩国 三级 国产 欧美 | 一级特级aaaa毛片免费观看 |