精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

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

【C語言經(jīng)典面試題】static關(guān)鍵字的作用有哪些?

嵌入式物聯(lián)網(wǎng)開發(fā) ? 來源:嵌入式物聯(lián)網(wǎng)開發(fā) ? 作者:嵌入式物聯(lián)網(wǎng)開發(fā) ? 2022-10-02 12:00 ? 次閱讀

C語言經(jīng)典面試題】static關(guān)鍵字的作用有哪些?

經(jīng)典面試題,有必要了解下!

1 問題描述

**如題所述,在C語言中,C語言的 **static 關(guān)鍵字的作用有哪些呢?

2 答案解析

作為一個(gè)從業(yè)多年的C程序員,我來給一個(gè)自己的參考答案;

  • **修飾 **某個(gè)函數(shù)

當(dāng)static修飾某個(gè)函數(shù)時(shí),表示這個(gè)函數(shù)是一個(gè)內(nèi)部函數(shù),它只能被當(dāng)前.C文件的其他函數(shù)調(diào)用,而本C文件外的其他函數(shù)則不可調(diào)用這個(gè)函數(shù)。

  • **修飾 **全局變量

當(dāng)static修飾全局變量時(shí),表示這個(gè)全局變量?jī)H在當(dāng)前C文件中生效,其他的C文件中,并不可訪問該全局變量。

  • **修飾 **局部變量

**當(dāng)static修飾局部變量時(shí),表示這個(gè)局部變量位于全局區(qū),但是它僅能夠被該函數(shù)內(nèi)部訪問,函數(shù)外部則不能訪問;當(dāng)函數(shù)內(nèi)部訪問時(shí),該局部變量具有 ** 記憶性

3 示例代碼

寫一段示例代碼:

?
?
#include 
#include 
?
static int test_func1(int a)
{
static int c = 5;
c = a;
return a + 1;
}
?
static int b;
?
int main(int argc, const char *argv[])
{
printf("test: %d\\n", test_func1(1));
return 0;
}

這段代碼,則分別演示了3種情況,可以參考一下。

4 更多分享

[架構(gòu)師李肯]

架構(gòu)師李肯全網(wǎng)同名 ),一個(gè)專注于嵌入式IoT領(lǐng)域的架構(gòu)師。有著近10年的嵌入式一線開發(fā)經(jīng)驗(yàn),深耕IoT領(lǐng)域多年,熟知IoT領(lǐng)域的業(yè)務(wù)發(fā)展,深度掌握IoT領(lǐng)域的相關(guān)技術(shù)棧,包括但不限于主流RTOS內(nèi)核的實(shí)現(xiàn)及其移植、硬件驅(qū)動(dòng)移植開發(fā)、網(wǎng)絡(luò)通訊協(xié)議開發(fā)、編譯構(gòu)建原理及其實(shí)現(xiàn)、底層匯編及編譯原理、編譯優(yōu)化及代碼重構(gòu)、主流IoT云平臺(tái)的對(duì)接、嵌入式IoT系統(tǒng)的架構(gòu)設(shè)計(jì)等等。擁有多項(xiàng)IoT領(lǐng)域的發(fā)明專利,熱衷于技術(shù)分享,有多年撰寫技術(shù)博客的經(jīng)驗(yàn)積累,堅(jiān)信【知識(shí)改變命運(yùn),技術(shù)改變世界】!

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

    關(guān)注

    180

    文章

    7598

    瀏覽量

    136188
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4306

    瀏覽量

    62430
  • 程序員
    +關(guān)注

    關(guān)注

    4

    文章

    950

    瀏覽量

    29761
  • static
    +關(guān)注

    關(guān)注

    0

    文章

    33

    瀏覽量

    10356
  • 全局變量
    +關(guān)注

    關(guān)注

    1

    文章

    28

    瀏覽量

    8961
收藏 人收藏

    評(píng)論

    相關(guān)推薦

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

    在編譯的第一個(gè)階段:預(yù)處理,對(duì)一些宏定義做替換。 第二個(gè),const。 C語言中的 const 用于修飾只讀變量,表示變量本身不能修改。 這個(gè)關(guān)鍵字會(huì)在編譯的第二步起作用,也就是編譯。
    的頭像 發(fā)表于 11-24 10:31 ?66次閱讀

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

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

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

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

    使用邊緣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è)

    快速掌握C語言關(guān)鍵字

    C語言中的32個(gè)關(guān)鍵字你知道多少個(gè)呢?根據(jù)關(guān)鍵字作用分為四類:數(shù)據(jù)類型關(guān)鍵字、控制語句
    的頭像 發(fā)表于 07-06 08:04 ?304次閱讀
    快速掌握<b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>關(guān)鍵字</b>

    inline關(guān)鍵字被優(yōu)化導(dǎo)致此類函數(shù)被布局在flash內(nèi),怎么處理?

    問題解決。 但是,希望樂鑫官方把idf內(nèi)源碼中的inline關(guān)鍵詞都替換為__attribute((always_inline)),因?yàn)閕nline關(guān)鍵字不可靠! 期待下次idf版本更新能解決此bug,自己修改idf源碼真的是權(quán)宜之計(jì)、臨時(shí)之策。
    發(fā)表于 06-21 12:03

    C語言中的typedef的應(yīng)用

    C 語言提供了 typedef 關(guān)鍵字,您可以使用它來為類型取一個(gè)新的名字。下面的實(shí)例為單字節(jié)數(shù)字定義了一個(gè)術(shù)語 BYTE。
    發(fā)表于 03-06 11:34 ?345次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語言</b>中的typedef的應(yīng)用

    嵌入式C語言面試大挑戰(zhàn)

    C++中static關(guān)鍵字除了具有C中的作用還有在類中的使用在類中,static可以用來修飾靜
    發(fā)表于 03-05 14:18 ?288次閱讀
    嵌入式<b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>面試</b>大挑戰(zhàn)

    簡(jiǎn)單總結(jié)一下嵌入式C++中常見的錯(cuò)誤形式

    對(duì)于 C++ 類,一些關(guān)鍵字只要寫在 .h 中就好,cpp 中就不用再加上了,比如 virtual、static關(guān)鍵字,如果在 cpp 中多寫,編譯器會(huì)報(bào)錯(cuò)。
    的頭像 發(fā)表于 02-23 09:40 ?443次閱讀

    關(guān)鍵字搜索文件夾中某個(gè)TXT文件

    文件夾中隨時(shí)創(chuàng)造TXT文件,如何及時(shí)選出剛創(chuàng)造的文件?或關(guān)鍵字搜索出需要的TXT文件?
    發(fā)表于 02-06 15:22

    在NVM和本地\"內(nèi)存中定義數(shù)組(靜態(tài) /global /local)的\"關(guān)鍵字是什么?

    在 NVM 和本地\"內(nèi)存中定義數(shù)組(靜態(tài) /global /local)的\"關(guān)鍵字是什么? 還有與 32 位對(duì)齊的關(guān)鍵字怎么樣。
    發(fā)表于 01-25 07:52

    經(jīng)典Linux面試題總結(jié)

    絕對(duì)路徑用什么符號(hào)表示?當(dāng)前目錄、上層目錄用什么表示?主目錄用什么表示? 切換目錄用什么命令?
    的頭像 發(fā)表于 01-04 11:01 ?344次閱讀

    探討多線程編程中的volatile關(guān)鍵字應(yīng)用

    有時(shí)候,我們可能需要在指針類型之間進(jìn)行轉(zhuǎn)換,而編譯器會(huì)認(rèn)為這是不安全的操作,從而導(dǎo)致編譯錯(cuò)誤。使用volatile關(guān)鍵字可以告知編譯器,這個(gè)類型轉(zhuǎn)換是有意義的,不應(yīng)該引發(fā)錯(cuò)誤。
    發(fā)表于 12-27 13:53 ?420次閱讀

    你還記得這個(gè)C語言關(guān)鍵字嗎?

    當(dāng)你使用volatile關(guān)鍵字時(shí),你告訴編譯器該變量的值可能會(huì)在程序的執(zhí)行過程中被外部因素更改,因此編譯器不應(yīng)該對(duì)該變量的讀寫進(jìn)行優(yōu)化。下面是一些使用volatile的例子,以及對(duì)它們的一些文字描述
    的頭像 發(fā)表于 12-17 08:00 ?332次閱讀
    你還記得這個(gè)<b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>關(guān)鍵字</b>嗎?

    vlookup提取關(guān)鍵字匹配多個(gè)結(jié)果

    是它能夠基于關(guān)鍵字匹配提取多個(gè)結(jié)果。 當(dāng)使用VLOOKUP提取多個(gè)結(jié)果時(shí),需要遵循以下幾個(gè)重要步驟。首先,您需要確保數(shù)據(jù)的組織和結(jié)構(gòu)正確。數(shù)據(jù)應(yīng)以表格格式排列,左側(cè)為關(guān)鍵字列,右側(cè)為相應(yīng)的信息列。 首先,讓我們考慮一個(gè)實(shí)際的例子。假設(shè)您有一個(gè)大型數(shù)據(jù)集
    的頭像 發(fā)表于 12-01 10:40 ?2343次閱讀