<pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

          <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

          <p id="bbfd9"></p>

          <p id="bbfd9"><cite id="bbfd9"></cite></p>

            <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

            <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
            <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>
            C語言

            標準c語言筆試題

            時間:2025-02-08 02:28:12 C語言 我要投稿
            • 相關推薦

            標準c語言筆試題

              引導語:在應聘與c語言相關崗位的工作時會要求進行筆試,以下是小編整理的標準c語言筆試題,歡迎參考閱讀!

            標準c語言筆試題

              1. 局部變量能否和全局變量重名? (華為)

              解析:能,局部會屏蔽全局。要用全局變量,需要使用"::"

              局部變量可以與全局變量同名,在函數內引用這個變量時,會用到同名的局部變量, 而不會用到全局變量。對于有些編譯器而言,在同一個函數內可以定義多個同名的局部變量. 比如在兩個循環體內都定義一個同名的局部變量,而那個局部變量的作用域就在那個循環體內。

              3. 如何引用一個已經定義過的全局變量? (華為)

              解析:extern

              可以用引用頭文件的方式,也可以用extern關鍵字,如果用引用頭文件方式來引用某個在頭文件中 聲明的全局變理,假定你將那個編寫錯了,那么在編譯期間會報錯,如果你用extern方式引用時, 假定你犯了同樣的錯誤,那么在編譯期間不會報錯,而在連接期間報錯。

              4. static全局變量與普通的全局變量有什么區別?

              解析:1) 全局變量(外部變量)的說明之前再冠以static 就構成了靜態的全局變量。 全局變量本身就是靜態存儲方式, 靜態全局變量當然也是靜態存儲方式 從以上分析可以看出,

              static全局變量與普通的全局變量有什么區別:

              static全局變量只初使化一次,防止在其他文件單元中被引用; static局部變量和普通局部變量有什么區別:

              static局部變量只被初始化一次,下一次依據上一次結果值; static函數與普通函數有什么區別: static函數在內存中只有一份,普通函數在每個被調用中維持一份拷貝

              5. 進程和線程的差別(微軟亞洲)

              解析:答:線程是指進程內的一個執行單元,也是進程內的可調度實體. 與進程的區別:

              (1)調度:線程作為調度和分配的基本單位,進程作為擁有資源的基本單位

              (2)并發性:不僅進程之間可以并發執行,同一個進程的多個線程之間也可并發執行

              (3)擁有資源:進程是擁有資源的獨立單位,線程不擁有系統資源,但可以訪問隸屬于進程的資源.

              (4)系統開銷:在創建或撤消進程時,由于系統都要為之分配和回收資源,導致系統的開銷明顯大于創建或撤消線程時的開銷

              6. 用宏定義寫出swap(x,y)(思科)

              解析:#define swap(x, y) x = x + y; y = x - y; x = x - y

              7. 什么是預編譯,何時需要預編譯:(思科)

              解析:就是指程序執行前的一些預處理工作,主要指#表示的. 何時需要預編譯? 1)、總是使用不經常改動的大型代碼體。

              2)、程序由多個模塊組成,所有模塊都使用一組標準的包含文件和相同的編譯選項。 在這種情況下,可以將所有包含文件預編譯為一個預編譯頭。

              8. 下述三個有什么區別?char * const p;char const * p,const char *p; (慧通)

              解:const char* p和char const *p修飾的是p所指向的變量,

              不可以用*p=’a’等這樣的方式修改變量區的內容. 指針本身是可以修改的,比如說

              char x,y; const *p = &x, p = &y,修改指針本身是可以的,*p = ‘b’就不行。

              Char *const p;中const修飾的是指針,表明指針在操作過程中不可以修改,

              而指針所指向的內容是可以修改的,比如說char x ,y; char* const p = &x; *p = ‘b’是可以的, 但p=&y;是不可以的,const修飾的是指針,不可以修改指針的指向,

              只可以修改指針所捆綁的變量

              9. int (*s[10])(int) 表示的是什么啊 ? (慧通)

              解析:這樣的表達式可以遵循這樣的規則:從右向左,由近及遠,括號優先;

              比如:從a符號開始。其右邊是[10],說明a是個數組,其中存了十個元素。 再看a的左邊是一個*。說明數組中存的是指針。 現在在看(*a[10])的右邊是(int);說明所存的指針是指向有一個int形參的函數 現在看(*a[10])的左邊是個int ,說明指向的函數的返回值為int 類型;

              10. 進程之間通信的途徑,進程間通信方法(慧通)

              解析:無名管道,命名管道,消息隊列,信號,共享內存,套接字。等

              11. 什么是“引用”?申明和使用“引用”要注意哪些問題?

              解析:引用就是某個目標變量的“別名”(alias),對應用的操作與對變量直接操作效果完全相同。申明一個引用的時候,切記要對其進行初始化。引用聲明完畢后,相當于目標變量名有兩個名稱,即該目標原名稱和引用名,不能再把該引用名作為其他變量名的別名。聲明一個引用,不是新定義了一個變量,它只表示該引用名是目標變量名的一個別名,它本身不是一種數據類型,因此引用本身不占存儲單元,系統也不給引用分配存儲單元。不能建立數組的引用

              12.include和include “filename.h”的區別?

              解析:<>是從標準庫路徑搜索,

              “”是從用戶當前工作目錄開始,找不到,在到標準庫開始

              13.Heap和Stack的區別?

              解析:Heap是堆,Stack是棧。

              棧的空間由操作系統自動分配和回收,而堆上的空間由程序員申請和釋放。

              棧的空間大小較小,而堆的空間較大。

              棧的地址空間往低地址方向生長,而堆向高地址方向生長。

              棧的存取效率更高。

              程序在編譯期間對變量和函數的內存分配都在棧上,

              且程序運行過程中對函數調用中參數的內存分配也是在棧上。

              14.sizeof和strlen之間的區別?

              解析:(1)sizeof操作符的結果類型是size_t,它在頭文件中的typedef為

              unsigned int類型,該類型保證能容納實現所建立的最大對象的字節大小。

              (2)sizeof是運算符,strlen是函數

              (3)sizeof可以用類型做參數,strlen只能用char *做參數,

              且必須是以’

                    <pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

                    <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

                    <p id="bbfd9"></p>

                    <p id="bbfd9"><cite id="bbfd9"></cite></p>

                      <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

                      <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
                      <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>
                      飘沙影院