對於socket在這裡我不想究其歷史,我只想說其時它是一種程序通訊的方式,簡言之就是呼叫這個網路庫的一些api函式就能實現分布在不同主機的相關程序之間的資料交換.
socket中首先我們要理解如下幾個定義概念:
二是埠號:用來標識本地通訊程序,方便os提交資料.就是說程序指定了對方程序的網路ip,但這個ip只是用來標識程序所在的主機,如何來找到執行在這個主機的這個程序呢,就用埠號.
三是連線:指兩個程序間的通訊鏈路.
四是半相關:網路中用乙個三元組可以在全域性唯一標誌乙個程序:
(協議,本地位址,本地埠號)
這樣乙個三元組,叫做乙個半相關,它指定連線的每半部分。
五是全相關
乙個完整的網間程序通訊需要由兩個程序組成,並且只能使用同一種高層協議。也就是說,不可能通訊的一端用tcp協議,而另一端用udp協議。因此乙個完整的網間通訊需要乙個五元組來標識:
(協議,本地位址,本地埠號,遠地位址,遠地埠號)
這樣乙個五元組,叫做乙個相關(association),即兩個協議相同的半相關才能組合成乙個合適的相關,或完全指定組成一連線。
介紹完基礎知識,下面就介紹一些api函式:
好了,socket基礎我們就介紹到這裡
面試練習一
1.const define typedef的區別 const define的區別 1.1 安全性方面 const 能定義常量的型別,編譯的時候能對常量型別進行檢查。而define則不能,它是單純的字元替換,很可能有一些邊際的隱患.1.2 生命週期 const 定義的常量在堆疊中分配了記憶體,而de...
C 面試練習20200518
1.寫出完整版的strcpy函式 如果編寫乙個標準strcpy函式的總分值為10,下面給出幾個不同得分的答案 2分void strcpy char strdest,char strsrc 4分void strcpy char strdest,const char strsrc 將源字串加const,...
面試練習1 氣泡排序
排序 將乙個記錄的序列,重新排列成按關鍵字有序的序列 排序的意義在於方便查詢,方便其他操作 分為穩定性排序和不穩定性排序 內部排序 待排序的記錄存放在計算機的儲存器中進行排序的過程 外部排序 待排序的記錄數量很大,以致於記憶體一次不能全部容納記錄,排序過程需要對外存進行訪問的排序過程 排序的關鍵 比...