原创 關於程序的健壯性及魯棒性

魯棒是英文Robust的音譯。 健壯性是指軟件對於規範要求以外的輸入情況的處理能力。 所謂健壯的系統是指對於規範要求以外的輸入能夠判斷出這個輸入不符合規範要求,並能有合理的處理方式。 另外健壯性有時也和容錯性,可移植性,正確性有交叉的地

原创 第二章 Shell程序設計

1.shell相當於windows下的的cmd提示符比較類似,可以通過shell編寫腳本,他們是在運行時解釋執行的(挺好的特性,很多東西需要在運行時候再選擇執行) 2.ls -al |more 意思是顯示當前目錄的所有文件,但是把ls的輸

原创 c++面試必須知道的問題

1.    面向對象的程序設計思想是什麼? 答:把數據結構和對數據結構進行操作的方法封裝形成一個個的對象。   2.    什麼是類? 答:把一些具有共性的對象歸類後形成一個集合,也就是所謂的類。   3.  

原创 STL 容器適配器

標準庫提供了三種順序容器適配器:queue、priority_queue、stack.適配器是標準庫中通用的 概念,包括容器適配器、迭代器適配器和函數適配器。     本質上,適配器是使一事物的行爲類似於另一類事物的行爲的一種機制。容

原创 SGI_STL_空間配置器

一般而言,我們習慣C++內存申請操作和釋放操作如下: class Foo{}; Foo * pf = new Foo;  //1.申請空間2.調用構造函數 delete pf;                //1.析構函數2.釋放空間

原创 第三章 文件操作

1.linux一切都是文件,通常程序可以像使用文件一樣使用磁盤文件,串行口 打印機等。 2.5大基本函數 open close read write ioctl。 3.要想讀cdrom,需要將cdrom驅動器掛載爲一個文件 mount -

原创 C++中計算程序的運行時間

個程序的功能通常有很多種方法來實現,怎麼樣的程序纔算得上最優呢?舉個例子,如果實現同一個功能的兩個程序,一個一點按鈕就給出運行結果,而另一個則需要漫長的時間去等待,就像安裝WINDOWS XP一樣(呵呵,太誇張了吧),你會去使用哪個程序

原创 動態庫DLL加載方式-靜態加載和動態加載

靜態加載: 如果你有a.dll和a.lib,兩個文件都有的話可以用靜態加載的方式: message函數的聲明你應該知道吧,把它的聲明和下面的語句寫到一個頭文件中 #pragma comment(lib, "a.lib") 然後你的對話框

原创 Linux下C語言的調試

調試是每個程序員都會面臨的問題. 如何提高程序員的調試效率, 更好更快地定位程序中的問題從而加快程序開發的進度, 是大家共同面對的問題. 可能Windows用戶順口就會說出:用VC唄 :-) , 它提供了設置斷點, 單步跟蹤等的圖形界面,

原创 程序設計的常用算法

算法(Algorithm):計算機解題的基本思想方法和步驟。算法的描述:是對要解決一個問題或要完成一項任務所採取的方法和步驟的描述,包括需要什麼數據(輸入什麼數據、輸出什麼結果)、採用什麼結構、使用什麼語句以及如何安排這些語句等。通常使用

原创 學STL談Vector容器(一)

Vector容器操作綜合實例代碼:  #include<iostream>  #include<vector>  #include<algorithm>  #include<string>  using namespace std;  i

原创 數據類型轉換

我們先定義一些常見類型變量藉以說明 int i = 100; long l = 2001; float f=300.2; double d=12345.119; char username[]="程佩君"; char temp[200]

原创 第四章 Linux環境

1. int main(int argc,char *argv[]) argc是參數的個數,包括自己的函數名,argv從函數名開始的參數。 2.善用getopt函數getopt(argc,argv,“if:lr”),意思是遇到:後面

原创 分段和分頁

一. 分頁存儲管理 1.基本思想 用戶程序的地址空間被劃分成若干固定大小的區域,稱爲“頁”,相應地,內存空間分成若干個物理塊,頁和塊的大小相等。可將用戶程序的任一頁放在內存的任一塊中,實現了離散分配。 2. 分頁存儲管理的地址

原创 學STL談Deque容器(二)

Deque容器操作綜合實例代碼:  #include<iostream>  #include<deque>  #include<string>  #include<algorithm>  using namespace std;  int