<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      速看!這8道嵌入式面試題你都會嗎?

      大家好,我是知微

      正逢求職季,分享一些嵌入式面試當中經常會遇到的題目,希望這些干貨對小伙伴們面試有用哦!

      1、介紹一下static關鍵字的作用

      在C語言中,static 關鍵字有幾種不同的作用,根據其用途可以大致分類如下:

      • 局部變量:當static用于函數內的局部變量時,它使該變量的值在函數調用之間持久化,即變量在函數的多次調用間不會被重新初始化。它仍然只在聲明它的代碼塊內可見。
      • 全局變量:將全局變量聲明為static,可以限制其鏈接范圍僅限于定義該變量的文件內部,也就是說,它不可以被其他文件通過extern外部聲明所訪問。
      • 函數:如果一個函數被聲明為static,它的鏈接范圍也將限制在其定義的文件內。在文件外部不可見,不能被其他文件調用。
      • 類成員:在面向對象的編程語言中,如C++或Java,static可以用來聲明靜態成員變量和成員函數。靜態成員被該類的所有實例共享,不屬于任何單獨的對象實例。靜態成員函數同樣不屬于任何單個對象,因而沒有this指針,并且只能訪問其類的靜態成員。

      2、介紹一下const關鍵字的作用

      const 關鍵字在C語言中用來聲明一個常量。被const修飾的變量在定義后不可更改。const可以用于不同的上下文中:

      • 局部變量:標記函數內的局部變量為常量,意味著該變量的值在其作用域內不能被改變。
      • 全局變量:用const修飾全局變量,可以設置跨文件的不可變數據。
      • 指針const用于指針時,可以讓指針指向的值或者指針本身的值(指向的地址)不可變。例如,const int *ptr表示指向的int值不可改變,而int * const ptr表示指針ptr的值(地址)不可更改。
      • 函數參數:如果函數的參數被標記為const,意味著傳遞給函數的變量在函數內不會被改變,這對于引用和指針參數尤其重要,因為它告訴用戶這些參數是用來讀取而非修改的。
      • 類成員:在C++中,const可以用于成員函數,表明該成員函數不會修改其所屬的對象。這樣的成員函數可以被一個const對象調用。

      3、頭文件中的 ifndef/define/endif 是干什么用的?

      #ifndef#define#endif 這三個預處理指令用于防止頭文件重復包含。首次包含時,它會定義一個宏,如果該頭文件被再次包含,#ifndef 檢測到宏已定義,就會跳過頭文件內容,避免重復定義錯誤。

      4、用變量a定義

      a)一個整型數
      b) 一個指向整型數的指針
      c) 一個指向指針的的指針,它指向的指針是指向一個整型數
      d) 一個有10個整型數的數組
      e) 一個有10個指針的數組,該指針是指向一個整型數的:
      f) 一個指向有10個整型數數組的指針
      g) 一個指向函數的指針,該函數有一個整型參數并返回一個整型數
      h) 一個有10個函數指針的數組,該指針指向一個函數,該函數有一個整型參數并返回一個整型數

      a) int a; 
      b) int *a;
      c) int **a;
      d) int a[10]; 
      e) int *a[10];
      f) int ( *a)[10];
      g) int ( *a)(int);
      h) int ( *a[10])(int);
      

      5、new和malloc的區別

      1. 類型安全
        • new 是 C++ 中的運算符,它自動計算需要分配的空間大小,并返回正確的類型指針,無需類型轉換。
        • malloc 是 C 語言中的庫函數,它需要手動計算字節數,并返回 void* 類型,使用時通常需要強制類型轉換。
      2. 構造/析構函數
        • new 在分配內存的同時調用對象的構造函數,為對象的成員賦予初始值。
        • malloc 僅分配內存,不調用構造函數,因此不初始化內存。
      3. 異常處理
        • new 分配內存失敗時會拋出異常(bad_alloc)。
        • malloc 分配內存失敗時返回 NULL
      4. 匹配操作
        • 使用 new 分配的內存應該用 delete 來釋放。
        • 使用 malloc 分配的內存應該用 free 來釋放。
      5. 內存分配方式
        • new 通常分配的是單個對象的內存。
        • malloc 用來分配一段指定大小的內存區域,適合分配數組形式的內存塊。
      6. 重載
        • new 可以被重載以提供自定義的內存分配行為。
        • malloc 不能被重載,因為它是 C 標準庫中的一個函數。

      6、嵌入式系統中經常要用到無限循環,如何用C編寫死循環

      • 使用 while 循環:
      while(1) {
          // 這里放置循環體內的代碼
      }
      
      • 使用 for 循環:
      for(;;) {
          // 這里放置循環體內的代碼
      }
      
      • 使用 do-while 循環:
      do {
          // 這里放置循環體內的代碼
      } while(1);
      
      • 使用 goto 語句:
      LOOP_START: 
          // 這里放置循環體內的代碼
      goto LOOP_START;
      

      雖然 goto 方法可以實現

      7、隱式轉換規則

      如下代碼的輸出結果是?為什么?

      #include <stdio.h>
      int main(void)
      {
      unsigned int a = 6;
      int b = -20;
      
      if (a + b > 6)
      printf("a+b大于6\n");
      else
      printf("a+b小于6\n");
      
      return 0;
      }
      

      輸出結果

      a+b大于6
      

      解析

      因為編譯器會將有符號數b轉換成為一個無符號數,即此處 a+b 等價于 a+(unsigned int)b

      該程序運行在32bit環境下,b的值為0xFFFFFFFF-20+1 = 4294967276,即a+b將遠遠大于6。

      C 語言按照一定的規則來進行此類運算的轉換,轉換的順序為:

      double>float>unsigned long>long>unsigned int>int
      

      8、sizeof和strlen的區別是什么?

      1. sizeof() 是一個運算符,而 strlen() 是一個函數。
      2. sizeof() 計算的是變量或類型所占用的內存字節數,而 strlen() 計算的是字符串中字符的個數。
      3. sizeof() 可以用于任何類型的數據,而 strlen() 只能用于以空字符 '\0' 結尾的字符串。
      4. sizeof() 計算字符串的長度,包含末尾的 '\0',strlen() 計算字符串的長度,不包含字符串末尾的 '\0'。

      以上就是今天要分享的內容了!

      ??你的每一次??點贊 ?收藏 ??評論,都是我更新的動力,如有錯誤請留言指正,非常感謝!

      posted @ 2024-04-11 23:00  知微之見  閱讀(775)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 国产麻豆剧果冻传媒一区| 亚洲欧美综合精品二区| 亚洲精品国产精品国在线| 亚洲精品无码成人A片九色播放| 国产av一区二区午夜福利| 国产精品九九久久精品女同| 亚洲产国偷v产偷v自拍色戒| 鲁一鲁一鲁一鲁一澡| 亚洲五月天一区二区三区| 欧美老少配性行为| 青青草原国产精品啪啪视频| 国产剧情91精品蜜臀一区| 插插射啊爱视频日a级| 亚洲av日韩av永久无码电影| 亚洲综合精品一区二区三区| 东京热人妻无码一区二区av| 强奷乱码中文字幕| 久久亚洲欧美日本精品| 国产剧情91精品蜜臀一区| 北岛玲中文字幕人妻系列| 成年女人免费碰碰视频| 国产稚嫩高中生呻吟激情在线视频| 亚洲精品无码乱码成人| 久久综合97丁香色香蕉| 亚洲色成人一区二区三区人人澡人人妻人人爽人人蜜桃麻豆 | 精品熟女亚洲av在线观看| 丁香五月亚洲综合在线国内自拍| 不卡一区二区三区四区视频| 亚洲欧美中文日韩在线v日本| 国产69精品久久久久人妻刘玥| 无码日韩av一区二区三区| 2018天天拍拍天天爽视频| 麻豆文化传媒精品一区观看| 中文字幕久久国产精品| 色婷婷av久久久久久久| 国产免费午夜福利在线播放| 深夜av在线免费观看| 米林县| 热99久久这里只有精品| 中文字幕有码无码AV| 欧美交a欧美精品喷水|