關於EOF的幾個問題

2021-07-30 03:39:38 字數 627 閱讀 8920

1 如何輸入eof

ctrl + z in win or ctrl + d in linux

2 阻塞式以及非阻塞式

輸入緩衝是行緩衝。當從鍵盤上輸入一串字元並按回車後,這些字元會首先被送到輸入緩衝區中儲存。每當按下回車鍵後,cin.get() 就會檢測輸入緩衝區中是否有了可讀的資料。cin.get() 還會對鍵盤上是否有作為流結束標誌的 ctrl+z 或者 ctrl+d 鍵按下作出檢查,其檢查的方式有兩種:阻塞式以及非阻塞式。

阻塞式檢查方式指的是只有在回車鍵按下之後才對此前是否有 ctrl+z 組合鍵按下進行檢查,非阻塞式樣指的是按下 ctrl+d 之後立即響應的方式。如果在按 ctrl+d 之前已經從鍵盤輸入了字元,則 ctrl+d的作用就相當於回車,即把這些字元送到輸入緩衝區供讀取使用,此時ctrl+d不再起流結束符的作用。如果按 ctrl+d 之前沒有任何鍵盤輸入,則 ctrl+d 就是流結束的訊號。

windows系統中一般採用阻塞式檢查 ctrl+z、unix/

linux

系統下一般採用非阻塞式的檢查 ctrl+d。樓主是在windows系統下,因此使用阻塞式的 ctrl+z 來標識流的結束。

因此,輸入流結束的條件就是:^z 之前不能有任何字元輸入(回車除外),否則 ^z 起不到流結束的作用。

關於網路的幾個問題

q1 請你分別划划osi的七層網路結構圖,和tcp ip的五層結構圖?1 osi每層功能及特點 a 物理層 為資料鏈路層提供物理連線,在其上序列傳送位元流,即所傳送資料的單位是位元。此外,該層中還具有確定連線裝置的電氣特性和物理特性等功能。b 資料鏈路層 負責在網路節點間的線路上通過檢測 流量控制和...

關於Time Wait的幾個問題

time wait是個常問的問題,tcp網路程式設計中最不容易理解的也是它的time wait狀態,這也說明了tcp ip四次揮手中time wait狀態的重要性。下面通過4個問題來描述它 1.time wait狀態是什麼 2.為什麼會有time wait狀態 3.哪一方會有time wait狀態 ...

關於JWT的幾個問題

最近剛用上shrio做許可權控制,然後接觸到了jwt json web token jwt 是目前最流行的跨域身份驗證解決方案。說白了就是,比如我現在用vue寫乙個單頁面,有一些頁面是需要身份驗證的,如果你從login頁面進入,寫乙個頁面 需要使用者資訊 它是拿不到前乙個頁面狀態的,他無法去識別我們...