chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

C語(yǔ)言最雞肋的關(guān)鍵字

學(xué)益得智能硬件 ? 來(lái)源:學(xué)益得智能硬件 ? 2023-02-09 14:49 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

220ef0d8-9725-11ed-bfe3-dac502259ad0.png

C語(yǔ)言的關(guān)鍵字有很多,要說(shuō)最不常見(jiàn)的,我覺(jué)得應(yīng)該是auto。 說(shuō)它不常見(jiàn),因?yàn)楹芏鄷r(shí)候,我們都把它給省略了。 比如在函數(shù)內(nèi)部定義變量a,正常人都會(huì)這樣寫(xiě):

void function()
{
    int a;
}
很少有人會(huì)在前面加一個(gè)auto:
void function()
{
    auto int a;
}
其實(shí)這兩種寫(xiě)法是等價(jià)的,嚴(yán)謹(jǐn)一點(diǎn),在C語(yǔ)言中是等價(jià)的。 那auto關(guān)鍵字是不是雞肋般的存在? auto聲明的變量我們把它稱(chēng)作自動(dòng)變量,所謂自動(dòng)變量,就是定義的時(shí)候自動(dòng)分配內(nèi)存,函數(shù)運(yùn)行結(jié)束后內(nèi)存自動(dòng)釋放,所以你完全可以把它理解成局部變量。 它的作用跟static正好相反,static修飾的變量因?yàn)榇娣旁陟o態(tài)數(shù)據(jù)區(qū),所以即使函數(shù)調(diào)用結(jié)束了,變量也不會(huì)被釋放。
void function()
{
    static int num = 0;
    num++;
    printf("num = %d
", num);
}


int main()
{
    int i;
    for (i = 0; i < 3; i++)
    {
        function();
    }
    return 0;
}
我覺(jué)得auto存在的意義,可能就是跟static靜態(tài)變量、register寄存器變量、extern外部變量區(qū)分開(kāi)。

22572844-9725-11ed-bfe3-dac502259ad0.png

auto關(guān)鍵字的使用注意事項(xiàng). 第一個(gè),全局變量不能用auto修飾,編譯會(huì)報(bào)錯(cuò)。
auto int num = 0;     //錯(cuò)誤


int main()
{
    return 0;
}
第二個(gè),在C語(yǔ)言中,使用auto聲明的變量可以沒(méi)有類(lèi)型,比如直接來(lái)個(gè)auto a,編譯器會(huì)自動(dòng)把a(bǔ)當(dāng)作整型數(shù)據(jù)。
int main()
{
    auto a;
}
編譯結(jié)果:
root@Turbo:test# gcc test.c -o test
test.c: In function ‘main’:
test.c:5:7: warning: type defaults to ‘int’ in declaration of ‘a(chǎn)’ [-Wimpli
cit-int]    5 |  auto a;
      |       ^
root@Turbo:test#
第三個(gè),在C++中,auto是一個(gè)類(lèi)型說(shuō)明符,編譯器可以通過(guò)初始化的結(jié)果來(lái)判斷變量的類(lèi)型,前提是變量一定得初始化,否則就會(huì)報(bào)錯(cuò)。
int main()
{
autoa=1.1;//編譯器判斷a的類(lèi)型為double


    return 0;
}

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • C語(yǔ)言
    +關(guān)注

    關(guān)注

    180

    文章

    7632

    瀏覽量

    141522
  • 變量
    +關(guān)注

    關(guān)注

    0

    文章

    614

    瀏覽量

    28936

原文標(biāo)題:C語(yǔ)言最雞肋的關(guān)鍵字

文章出處:【微信號(hào):學(xué)益得智能硬件,微信公眾號(hào):學(xué)益得智能硬件】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    micro 關(guān)鍵字搜索全覆蓋商品,并通過(guò) API 接口提供實(shí)時(shí)數(shù)據(jù)

    micro 關(guān)鍵字搜索全覆蓋商品”并通過(guò) API 接口提供實(shí)時(shí)數(shù)據(jù)
    的頭像 發(fā)表于 07-13 10:13 ?43次閱讀

    《ESP32S3 Arduino開(kāi)發(fā)指南》第三章 C/C++語(yǔ)言基礎(chǔ)

    用的數(shù)據(jù)類(lèi)型及其取值范圍如表3.1.1所示。類(lèi)型關(guān)鍵字(簡(jiǎn)寫(xiě))占用內(nèi)存取值范圍 短整型int16_t(short)2節(jié)-32768 ~ 32767 無(wú)符號(hào)短整型uint16_t(unsigned
    發(fā)表于 06-10 09:20

    深入理解C語(yǔ)言C語(yǔ)言循環(huán)控制

    C語(yǔ)言編程中,循環(huán)結(jié)構(gòu)是至關(guān)重要的,它可以讓程序重復(fù)執(zhí)行特定的代碼塊,從而提高編程效率。然而,為了避免程序進(jìn)入無(wú)限循環(huán),C語(yǔ)言提供了多種循環(huán)控制語(yǔ)句,如break、continue和
    的頭像 發(fā)表于 04-29 18:49 ?1103次閱讀
    深入理解<b class='flag-5'>C</b><b class='flag-5'>語(yǔ)言</b>:<b class='flag-5'>C</b><b class='flag-5'>語(yǔ)言</b>循環(huán)控制

    static在單片機(jī)中的妙用

    不要從字面意思誤以為關(guān)鍵字 static 很安靜,其實(shí)它一點(diǎn)都不安靜。這個(gè)關(guān)鍵字C 語(yǔ)言里主要有兩個(gè)作用,下面我們就來(lái)介紹一下 C
    發(fā)表于 04-02 13:50 ?1次下載

    單片機(jī)編程關(guān)鍵字之volatile

    volatile 修飾的變量是說(shuō)這變量可能會(huì)被意想不到地改變。通常對(duì)于程序員而言,單片機(jī) 中用的就算常見(jiàn)了volatile 是易變的,不穩(wěn)定的意思。其實(shí)對(duì)于很多人來(lái)說(shuō),根本沒(méi)見(jiàn)過(guò)這個(gè)關(guān)鍵字,不 知道
    發(fā)表于 04-02 13:47 ?2次下載

    帶你在單片機(jī)編程中熟練使用const(可下載)

    C 語(yǔ)言關(guān)鍵字中 const 舉足輕重,我們今天就深度聊一聊 const 的定義和實(shí)際應(yīng)用,讓它 不再是迷C 語(yǔ)言中 const
    發(fā)表于 04-01 14:18 ?2次下載

    EE-62:在C語(yǔ)言中訪問(wèn)短內(nèi)存

    電子發(fā)燒友網(wǎng)站提供《EE-62:在C語(yǔ)言中訪問(wèn)短內(nèi)存.pdf》資料免費(fèi)下載
    發(fā)表于 01-07 14:02 ?0次下載
    EE-62:在<b class='flag-5'>C</b><b class='flag-5'>語(yǔ)言</b>中訪問(wèn)短<b class='flag-5'>字</b>內(nèi)存

    C語(yǔ)言關(guān)鍵字分別發(fā)生在哪個(gè)階段

    以下C語(yǔ)言關(guān)鍵字,分別發(fā)生在哪個(gè)階段? 第一個(gè),define。 首先得糾正一下,define 并不是C語(yǔ)言里面的
    的頭像 發(fā)表于 11-24 10:31 ?588次閱讀

    C++新手容易犯的十個(gè)編程錯(cuò)誤

    簡(jiǎn)單的總結(jié)一下?C++ 新手容易犯的一些編程錯(cuò)誤,給新人們提供一個(gè)參考。 1 有些關(guān)鍵字在 cpp 文件中多寫(xiě)了 對(duì)于 C++ 類(lèi),一些關(guān)鍵字只要寫(xiě)在 .h 中就好,cpp 中就不用再
    的頭像 發(fā)表于 11-15 12:42 ?1020次閱讀

    C語(yǔ)言與Java語(yǔ)言的對(duì)比

    C語(yǔ)言和Java語(yǔ)言都是當(dāng)前編程領(lǐng)域中的重要成員,它們各自具有獨(dú)特的優(yōu)勢(shì)和特點(diǎn),適用于不同的應(yīng)用場(chǎng)景。以下將從語(yǔ)法特性、內(nèi)存管理、跨平臺(tái)性、性能、應(yīng)用領(lǐng)域等多個(gè)方面對(duì)C
    的頭像 發(fā)表于 10-29 17:31 ?1058次閱讀

    C語(yǔ)言關(guān)鍵字--typedef

    C語(yǔ)言關(guān)鍵字使用方法學(xué)習(xí)指南!
    的頭像 發(fā)表于 10-07 12:44 ?613次閱讀

    基于ArkTS語(yǔ)言的OpenHarmony APP應(yīng)用開(kāi)發(fā):HelloOpenharmony

    console.log(typeof data); // number 3.2.2、number TypeScript 提供了 number 關(guān)鍵字來(lái)表示數(shù)字類(lèi)型,它是雙精度 64 位浮點(diǎn)值,既可以表示整數(shù)
    發(fā)表于 09-14 12:47

    使用邊緣AI和Sitara處理器進(jìn)行關(guān)鍵字檢測(cè)

    電子發(fā)燒友網(wǎng)站提供《使用邊緣AI和Sitara處理器進(jìn)行關(guān)鍵字檢測(cè).pdf》資料免費(fèi)下載
    發(fā)表于 09-02 11:30 ?0次下載
    使用邊緣AI和Sitara處理器進(jìn)行<b class='flag-5'>關(guān)鍵字</b>檢測(cè)

    typedef struct和直接struct的區(qū)別

    C語(yǔ)言中, typedef 和 struct 是兩種不同的關(guān)鍵字,它們?cè)诙x和使用上有著明顯的區(qū)別。 typedef struct 和直接 struct 在 C
    的頭像 發(fā)表于 08-20 10:58 ?3606次閱讀

    鴻蒙原生應(yīng)用元服務(wù)開(kāi)發(fā)-倉(cāng)頡基本概念標(biāo)識(shí)符

    在倉(cāng)頡編程語(yǔ)言中,開(kāi)發(fā)者可以給一些程序元素命名,這些名字也被稱(chēng)為“標(biāo)識(shí)符”,標(biāo)識(shí)符分為普通標(biāo)識(shí)符和原始標(biāo)識(shí)符兩類(lèi),它們分別遵從不同的命名規(guī)則。 普通標(biāo)識(shí)符不能和倉(cāng)頡關(guān)鍵字相同,可以取自以下兩類(lèi)字符
    發(fā)表于 08-06 17:37