總結的乙個牛公司的面試題

2021-04-12 20:30:08 字數 2697 閱讀 8624

1osi的七層網路結構圖,和tcp/ip的五層結構圖?

osi:

應用層 表示層 會話層(session)傳輸層 網路層(network) 資料鏈路層 物理層

]tcp/ip:應用層

傳輸層 網際網路絡層(internet) 資料鏈路層 物理層

2詳細的解釋一下ip協議的定義,在哪個層上面,主要有什麼作用? tcp與udp呢?i p

協議是在網路層,

----

網際網路絡層定義了分組格式和協議的協議。

ip協議只保證計算機能傳送和接收分組資料,

tcp協議是在傳輸層

而tcp

協議則可提供乙個可靠的、可流控的、全雙工的資訊流傳輸服務 在

internet

上傳輸控制協議和網際協議是配合進行工作的。網際協議(

ip)負責將訊息從乙個主機傳送到另乙個主機。為了安全訊息在傳送的過程中被分割成乙個個的小包。

傳輸控制協議(

tcp)負責收集這些資訊包,並將其按適當的次序放好傳送,在接收端收到後再將其正確地還原。傳輸協議保證了資料報在傳送中準確無誤

udp(使用者資料報協議

)協議是在傳輸層

--主要作用是將網路資料流量壓縮成資料報的形式。乙個典型的資料報就是乙個二進位制資料的傳輸單位

udpvs.tcp

udp 和

tcp協議的主要區別是兩者在如何實現資訊的可靠傳遞方面不同。

tcp協議中包含了專門的傳遞保證機制,當資料接收方收到傳送方傳來的資訊時,會自動向傳送方發出確認訊息;傳送方只有在接收到該確認訊息之後才繼續傳送其它資訊,否則將一直等待直到收到確認資訊為止。

與tcp不同,

udp協議並不提供資料傳送的保證機制。如果在從傳送方到接收方的傳遞過程中出現資料報的丟失,協議本身並不能做出任何檢測或提示。因此,通常人們把

udp協議稱為不可靠的傳輸協議。

相對於tcp協議,

udp協議的另外乙個不同之處在於如何接收突法性的多個資料報。不同於

tcp,

udp並不能確保資料的傳送和接收順序

q3:請問交換機和路由器分別的實現原理是什麼?分別在哪個層次上面實現的?

(一般意義上說)

交換機是工作在資料鏈路層

。但隨著科技的發展,現在有了三層交換機,三層交換機已經擴充套件到了網路層。也就是說:它等於

「資料鏈路層

+ 部分網路層」。

交換機中傳的是幀。通過儲存**來實現的。

路由器是工作在網路層

。路由器中傳的是

ip資料報

。主要是選址和路由

q4:請問c++的類和c裡面的struct有什麼區別

?????

c++類可以定義函式和變數,

struct

中也可以定義函式,當然是通過函式指標方法

類預設屬性是

private

的struct

預設屬性是

public

的,當然你是沒辦法定義

private的

c中的struct

的成員預設的訪問許可權是

public,

在以前c

的struct

中是不允許有成員函式的

,但是現在

c++對

struct

進行了擴充套件

,現在的

struct

中也可以有成員函式

,還有乙個區別就是

c++的

template

機制只支援

class

不支援struct

q5:請講一講析構函式和虛函式的用法和作用? 置於「

~」是析構函式

;析構函式因使用

"~"符號

(邏輯非運算子

),表示它為膩建構函式,加上類名稱來定義。

;析構函式也是特殊的類成員函式,它沒有返回型別,沒有引數,不能隨意呼叫,也沒有過載,只有在類物件的生命期結束的時候,由系統自動呼叫。

有適放記憶體空間的做用

! 虛函式是

c++多型(過載)的一種表現

??例如:子類繼承了父類的乙個函式(方法),而我們把父類的指標指向子類,則必須把父類的該函式(方法)設為

virturl

(虛函式)。

使用虛函式,我們可以靈活的進行動態繫結,當然是以一定的開銷為代價。

如果父類的函式(方法)根本沒有必要或者無法實現,完全要依賴子類去實現的話,可以把此函式(方法)設為

virturl

函式名=0

我們把這樣的函式(方法)稱為純虛函式。

如果乙個類包含了純虛函式,稱此類為抽象類

q6:全域性變數和區域性變數有什麼區別?實怎麼實現的?作業系統和編譯器是怎麼知道的?

全域性變數和區域性變數的區別是在儲存器中位置不同,具體說,全域性變數儲存在資料段中,區域性變數都有可能,一般來說在堆疊段

全域性變數和區域性變數在程式的不同的段中。編譯器根據語法;作業系統其實不需要知道

乙個面試題

題目是 假設乙個 搜尋引擎收錄了2 24首歌曲,並記錄了可收聽這些歌曲的2 30條url,但每首歌的url不超過2 10個。系統會定期檢查這些url,如果乙個url不可用則不出現在搜尋結果中。現在歌曲名和url分別通過整型的song id和url id唯一確定。對該系統有如下需求 1 通過song ...

乙個面試題

在不超過最右邊的數量的情況下任意組合,要求加起來不超過20280這個數字,但達成最接近的情況,現有一種方法為 1290 4 2990 5,差170,有沒有更接近20280的答案 資料如下 4900 13790 22990 5 意思是不能超過5次,但可以使用1次,2次,3次,4次,5次。2390 31...

乙個面試題

res fromkeys name password age print res print res print id res name id res password res name 666 print res 輸出 57496360 57496360 fromkeys 建立字典時,字典中所有的...