欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

淺析C語言中typeof關(guān)鍵字用法

 更新時(shí)間:2017年02月27日 14:49:37   作者:ComingFlying  
typeof關(guān)鍵字是C語言中的一個(gè)新擴(kuò)展。在linux內(nèi)核源代碼中廣泛使用。接下來通過本文給大家分享C語言中typeof關(guān)鍵字用法,需要的朋友參考下

前言

C語言中 typeof 關(guān)鍵字是用來定義變量數(shù)據(jù)類型的。在linux內(nèi)核源代碼中廣泛使用。

下面是Linux內(nèi)核源代碼中一個(gè)關(guān)于typeof實(shí)例:

#define min(x, y) ({        \
  typeof(x) _min1 = (x);     \
  typeof(y) _min2 = (y);     \
  (void) (&_min1 == &_min2);   \
  _min1 < _min2 ? _min1 : _min2; })

1.當(dāng)x的類型為是 int 時(shí) _min1變量的數(shù)據(jù)類型則為 int。

2.當(dāng)x為一個(gè)表達(dá)式時(shí)(例: x = 3-4), _min1變量的數(shù)據(jù)類型為這個(gè)表達(dá)式結(jié)果的數(shù)據(jù)類型。
.......

3.typeof括號(hào)中也可以是函數(shù)

    例:

 int function(int, int);
  typeof(function(1. 2)) val;

    此時(shí)val的數(shù)據(jù)類型為 函數(shù)function(int, int)返回值的數(shù)據(jù)類型    ,即int類型。(注意: typeof并不會(huì)執(zhí)行函數(shù)function)。

typeof關(guān)鍵字有點(diǎn)類似與c++中的decltype關(guān)鍵字。

相關(guān)文章

  • 7種排序算法的實(shí)現(xiàn)示例

    7種排序算法的實(shí)現(xiàn)示例

    這篇文章主要介紹了7種排序算法的實(shí)現(xiàn)示例,需要的朋友可以參考下
    2014-05-05
  • c++基礎(chǔ)語法:構(gòu)造函數(shù)與析構(gòu)函數(shù)

    c++基礎(chǔ)語法:構(gòu)造函數(shù)與析構(gòu)函數(shù)

    構(gòu)造函數(shù)用來構(gòu)造一個(gè)對(duì)象,主要完成一些初始化工作,如果類中不提供構(gòu)造函數(shù),編譯器會(huì)默認(rèn)的提供一個(gè)默認(rèn)構(gòu)造函數(shù)(參數(shù)為空的構(gòu)造函數(shù)就是默認(rèn)構(gòu)造函數(shù)) ;析構(gòu)函數(shù)是隱式調(diào)用的,delete對(duì)象時(shí)候會(huì)自動(dòng)調(diào)用完成對(duì)象的清理工作
    2013-09-09
  • C語言中的柔性數(shù)組你真的了解嗎

    C語言中的柔性數(shù)組你真的了解嗎

    這篇文章主要為大家詳細(xì)介紹了C語言中的柔性數(shù)組你,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • Java C++ 算法leetcode828統(tǒng)計(jì)子串中唯一字符乘法原理

    Java C++ 算法leetcode828統(tǒng)計(jì)子串中唯一字符乘法原理

    這篇文章主要為大家介紹了Java C++ 算法leetcode828統(tǒng)計(jì)子串中唯一字符乘法原理詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • C++面試八股文之什么是構(gòu)造函數(shù)

    C++面試八股文之什么是構(gòu)造函數(shù)

    構(gòu)造函數(shù)是一種特殊的成員函數(shù),用于創(chuàng)建和初始化類的對(duì)象,這篇文章主要為大家詳細(xì)介紹了C++中構(gòu)造函數(shù)的相關(guān)知識(shí)點(diǎn),需要的可以參考一下
    2023-06-06
  • c++獲取進(jìn)程信息列表和進(jìn)程所調(diào)用的dll列表

    c++獲取進(jìn)程信息列表和進(jìn)程所調(diào)用的dll列表

    這篇文章主要介紹了c++獲取進(jìn)程信息列表和進(jìn)程所調(diào)用的dll列表,大家參考使用吧
    2013-11-11
  • C語言字符串替換空格實(shí)例詳解

    C語言字符串替換空格實(shí)例詳解

    這篇文章主要為大家詳細(xì)介紹了C語言字符串替換空格實(shí)例,使用數(shù)據(jù)庫(kù),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • C++ stack與queue使用方法詳細(xì)講解

    C++ stack與queue使用方法詳細(xì)講解

    stack是一種容器適配器,專門用在具有后進(jìn)先出操作的上下文環(huán)境中,其刪除只能從容器的一端進(jìn)行 元素的插入與提取操作;隊(duì)列是一種容器適配器,專門用于在FIFO上下文(先進(jìn)先出)中操作,其中從容器一端插入元素,另一端提取元素
    2023-01-01
  • Qt模仿Windows文件夾縮略圖的三種實(shí)現(xiàn)方式

    Qt模仿Windows文件夾縮略圖的三種實(shí)現(xiàn)方式

    本文講的不是簡(jiǎn)單的model/view或者widget的或者QML的基礎(chǔ)框架實(shí)現(xiàn),而是在這些框架之上的肉(文件夾縮略圖)的效果實(shí)現(xiàn),本文將以QWidget、Qt Quick(QML)、以及QGraph三種實(shí)現(xiàn)方式來講解,如何做出和Windows類似的縮略圖,需要的朋友可以參考下
    2024-04-04
  • 深入學(xué)習(xí)C語言中常見的八大排序

    深入學(xué)習(xí)C語言中常見的八大排序

    排序編程中非?;A(chǔ)的的理論方法,雖然排序的方法多,但是理解起來并不難,它是最基本的,初學(xué)者一定要掌握的東西。本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值
    2021-11-11

最新評(píng)論