原创 extern()函數詳解

extern置於變量和函數前,目的是告訴編譯器,遇到此變量或者函數時,當作聲明來對待,去其他模塊中尋找定義。 1、extern置於變量前: 例如:在一個aa.c文件中定義了一個數組:char str[6]; 如果想在另外一個bb.c文件中

原创 iconv(文件編碼格式轉換)

1、UTF-8(8-bit Unicode Transformation Format)是一種針對Unicode的可變長度字符編碼,又稱萬國碼。由Ken Thompson於1992年創建。現在已經標準化爲RFC 3629。UTF-8用1到

原创 在linux中文件裏行尾奇怪的^M及解決

Linux編輯器vim中刪除行尾的^M   有時候,在 Linux 中使用打開曾在 Windows 中編輯過的文件時,會在行尾看到 ^M 字符。看起來總是感覺很彆扭。   刪除方法如下:   在 Vim 的命令模式中輸入 :%s/

原创 巧用Squid的ACL和訪問列表實現高效訪問控制

Squid是一個緩存Internet數據的軟件,其接收用戶的下載申請,並自動處理所下載的數據。當一個用戶想要下載一個主頁時,可以向Squid發出一個申請,要Squid代替其進行下載,然後Squid連接所申請網站並請求該主頁,接着把該主頁

原创 const關鍵字詳解

大家都知道,c編譯器和鏈接器將高級語言翻譯爲機器語言的過程,大致分爲四步:預處理、編譯、彙編、鏈接。 一、對c編譯器來說,預處理語句有個致命的缺點:像處理宏定義,僅僅只是簡單的值替換,沒有錯誤檢測機制。const關鍵字的推出,正是爲了取代

原创 core文件的生成與應用

程序異常退出時,內核會生成一個core文件(是內存映像以及調試信息)。可以通過使用gdb來查看core文件,指示出導致程序出錯的代碼所在的文件和行數

原创 PPP協議體系的實現

   其實PPP不像是一種協議,而更像是一種應用,可以把它看成一個撥號上網的應用軟件,撥號成功後,本地主機就可以正常上網了,可以使用TCP/IP等協議,而完全感覺不到PPP的存在。而實際上PPP在網絡協議棧中增加了不少東西,但對上層透明

原创 win10系統找不到以太網該怎麼辦

很多情況下需要用到或者查看本地連接/以太網。但是包括我自己在內我發現“本地連接”圖標消失的問題很常見。我自己是在安裝軟件的時候出現了cannot retrieve MAC address,需要打開本地連接,然後搜遍了方法無解,最後終於在油

原创 物理cpu個數、邏輯cpu個數、核數

一般情況:邏輯CPU的個數 = 物理CPU個數 * 每個cpu的核數。如果不相等的話,則表示服務器的CPU支持超線程技術 1、物理CPU:實際Ser

原创 HTTP協議詳解

HTTP是一個屬於應用層的面向對象的協議,由於其簡捷、快速的方式,適用於分佈式超媒體信息系統。它於1990年提出,經過幾年的使用與發展,得到不斷地完善和擴展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的規範化工作正

原创 二維數組的定義和引用

一、數組   數組是一個構造類型的數據結構,是許多個相同類型的數據的集合。二、二維數組實例:#include <stdio.h> static void print_str(char (*str)[4]) //static void p

原创 C++中的std詳解

以下內容爲:本人看C++視頻教程-範磊主講(2.91G)視頻學習筆記。  與大家分享下,希望可以幫助大家學習c++! 引例: #include<iostream> int main() { std::cout<<"我喜歡

原创 static關鍵字說明

static引出原因:static告知編譯器,定義變量的時候,在靜態存儲區分配內存,而不是在棧上。 例如,在函數內部定義的變量,在程序執行到它時,編譯器爲它在棧上分配內存,作用範圍到函數結束。但有些時候,想着下一次用此函數的時候還想用上一

原创 nat 詳解

NAT(Network Address Translation,網絡地址轉換)是將IP數據報頭中的IP地址轉換爲另一個IP地址的過程。在實際應用中,NAT主要用於實現私有網絡訪問公共網絡的功能。這種通過使用少量的公網IP地址代表較多的私網

原创 學習C++ -> 類(Classes)的定義與實現

一、"類" 的介紹    在C++中, 用 "類" 來描述 "對象", 所謂的"對象"是指現實世界中的一切事物。那麼類就可以看做是對相似事物的抽象, 找到這些不同事物間的共同點, 如自行車和摩托車, 首先他們都屬於"對象", 並且