Time of Update: 2017-02-27
先介紹函數,我們一共要用到三個函數,fopen,fread,fwrite。二進位讀寫的順序是用fopen以二進位方式開啟讀寫檔案,然後使用fread和fwrite兩個函數將資料寫入二進位檔案中。下面我們看看一個拷貝程式的源碼:Copy.c:#include <stdio.h>#include <stdlib.h> #define MAXLEN 1024 int main(int argc, char *argv[]) { if( argc
Time of Update: 2017-02-27
用慣了linux下的GCC編譯工具,倒喜歡起命令列的方式編譯連結C程式,居然還發現我裝的VS工具沒看到直接編譯C程式的工具(我不太熟悉這個)。VS的編譯檔案命令是cl,連結命令是link。參考了網上資料,採用提取VS的編譯器檔案組成一個可以命令列方式編譯器的工具。以下為步驟:1,在自己目錄建立檔案夾,如:D:/vctool;2,將VS安裝目錄下的VC目錄下的bin、lib、include目錄考到vctool目錄下;3,將c:/Program Files/Microsoft
Time of Update: 2017-02-27
MEF和MAF都是C#下的外掛程式編程架構,我們通過它們只需簡單的配置下原始碼就能輕鬆的實現外掛程式編程概念,設計出可擴充的程式。這真是件美妙的事情!MEF(Managed Extensibility Framework)MEF的工作原理大概是這樣的:首先定義一個介面,用這個介面來約束外掛程式需要具備的職責;然後在實現介面的程式方法上面添加反射標記“[Export()]”將實現的內容匯出;最後在介面的調用程式中通過屬性將外掛程式載入進來。我們還是用代碼來描述吧:1.
Time of Update: 2017-02-27
【系統內容】Windows Server 2008 R2,Haskell Platform 2013.2.0.0,ghc 7.6.3,cabal 1.16.0【操作步驟】1. 安裝Windows版Haskell Platform(不支援Windows Server 2012),Haskell Platform整合了cabal(相當於.NET中的msbuild+nuget), ghc(Glasgow Haskell Compiler,Haskell編譯器)2.
Time of Update: 2017-02-27
文本顏色屬性已經學會了,那麼下面就學習幾個比較常用的文本輸出函數,如下:BOOL FillConsoleOutputAttribute( // 填充字元屬性 HANDLE hConsoleOutput, // 控制代碼 WORD wAttribute, // 文字屬性 DWORD nLength, // 個數 COORD dwWriteCoord,
Time of Update: 2017-02-27
哈夫曼樹的介紹Huffman Tree,中文名是哈夫曼樹或霍夫曼樹,它是最優二叉樹。定義:給定n個權值作為n個葉子結點,構造一棵二叉樹,若樹的帶權路徑長度達到最小,則這棵樹被稱為哈夫曼樹。這個定義裡面涉及到了幾個陌生的概念,下面就是一顆哈夫曼樹,我們來看圖解答。(01)
Time of Update: 2017-02-27
三、數組與指標數組與指標有密切的聯絡。數組名本身就是該數組的指標,反過來,也可以把指標看成一個數組,數組名和指標實質上都是地址, 但是指標是變數,可以作運算。而數組名是常量,不能進行運算。例如: main() { char s[30], *p; /*定義字元型數組和指標變數*/ p=s; /*指標p指向數組s的第一個元素s[0]的地址*/ . . . *(p+8); /*指標p指向數組s的第9個元素s[8]的地址*/ . . . } 由上例可以看出數組和指標有如下關係:
Time of Update: 2017-02-27
2. 陣列變數的賦值 (1) 整型數組和浮點數組的賦值 例如: main() { int m[2][2]; float n[3]; m[0][0]=0, m[0][1]=17, m[1][0]=21;/*數組元素賦值*/ n[0]=109.5, n[1]=-8.29, n[2]=0.7; . . . } (2)字串數組的賦值 例如: main() { char s[30]; strcpy(s, "Good News!"); /*給數組賦字串*/ . . . }
Time of Update: 2017-02-27
4.5 變數的初始化和賦值一、變數的初始化 變數的初始化是指變數在被說明的同時賦給一個初值。Turbo C2.0中外部變數和靜態全程變數在程式開始處被初始化, 局部變數包括靜態局部變數是在進入定義它們的函數或複合陳述式時才作初始化。所有全程變數在沒有明確的初始化時將被自動清零,而局部變數和寄存器變數在未賦值前其值是不確定的。對於外部變數和靜態變數, 初值必須是常數運算式, 而自動變數和寄存器變數可以是任意的運算式,這個運算式可以包括常數和前面說明過的變數和函數。 1.
Time of Update: 2017-02-27
4.3 變數儲存類型 Turbo C2.0支援四種變數儲存類型。說明符如下: auto static extern register 下面分別來介紹。 一、auto auto稱為自動變數, 已在前面作了介紹, 這裡不再重複。 二、static static稱為靜態變數。根據變數的類型可以分為靜態局部變數和靜態全程變數。 1. 靜態局部變數 它與局部變數的區別在於: 在函數退出時, 這個變數始終存在, 但不能被其它函數使用, 當再次進入該函數時,
Time of Update: 2017-02-27
2.3 字元型(char) 加上不同的修飾符, 可以定義有符號和無符號兩種類型的字元型變數, 例如: char a: /*a被定義為有符號字元變數*/ unsigned char l; /*l被定義為無符號字元變數*/ 字元在電腦中以其ASCII碼方式表示, 其長度為1個位元組, 有符號字元型數取值範圍為-128~127, 無符號字元型數到值範圍是0~255。因此在Turbo C語言中,字元型資料在操作時將按整型數處理, 如果某個變數定義成char,則表明該變數是有符號的,
Time of Update: 2017-02-27
學習 C++
Time of Update: 2017-02-27
下面程式把一個浮點數組以二進位方式寫入檔案test_b.dat中。例14: #include <stdio.h> main() { float f[6]={3.2, -4.34, 25.04, 0.1, 50.56, 80.5}; /*定義浮點數組並初始化*/ int i; FILE *fp; fp=fopen("test_b.dat", "wb"); /*建立一個二進位檔案唯寫*/ fwrite(f, sizeof(float), 6,
Time of Update: 2017-02-27
意圖用原型執行個體指定建立對象的種類,並且通過拷貝這些原型建立新的對象。情境遊戲情境中的有很多相似的敵人,它們的技能都一樣,但是隨著敵人出現的位置不同,這些人的能力不太一樣。假設,我們現在需要把三個步兵組成一隊,其中還有一個精英步兵,能力特別高。那麼,你或許可以建立一個敵人抽象類別,然後對於不同能力的步兵建立不同的子類。然後,使用Factory
Time of Update: 2017-02-27
Code 1:用一個System.Web.UI.HtmlControls.HtmlInputFile去handle檔案選取。以下是button click event中的code,用來執行當檔案選取了之後讀取檔案的內容。1 System.Web.HttpPostedFile input = Request.Files[0];23 if (input != null && input.ContentLength !=
Time of Update: 2017-02-27
CLR提供了可以區分類型的Equality 和Identity能力。l Equality:如果兩個對象是相同的類型,並且它們各內建有相同和等值的屬性。(They are instances of the same type and if each of the fields in one object matches the values of the fields in the other object)Equality必須滿足三個必要條件:reflexive, symmetrics,
Time of Update: 2017-02-27
1、如何在多行TextBox中寫入文本時實現換行?由於Windows系統中,斷行符號符需兩上字元。因此方法是使用\r\n標記,如Label="Calculation
Time of Update: 2017-02-27
WMI不僅可以擷取想要的電腦資料,而且還可以用以遠端控制。遠端控制電腦不僅是駭客們的夢想,也是大多數網路管理者所渴望得到的,尤其在現代的網路中,每一個網路管理者所面對的區域網路,都是由一個龐大的電腦群組成,如果有效管理網路的每一台電腦就顯得格外重要了。目前網路管理軟體通常的做法是,在遠端電腦上運行用戶端背景程式,在本機電腦上運行一個伺服器端前台控製程序,通過這二個程式直接的通訊實現對電腦的遠端控制。這種作法的缺點是十分明顯的,當用戶端關閉了背景程式,這種遠端管理就無法實現了,所以為了克服這個缺點
Time of Update: 2017-02-27
一、享元(Flyweight)模式Flyweight在拳擊比賽中指最輕量級,即"蠅量級",有些作者翻譯為"羽量級"。這裡使用"享元模式"更能反映模式的用意。享元模式以共用的方式高效地支援大量的細粒度對象。享元對象能做到共用的關鍵是區分內蘊狀態(Internal State)和外蘊狀態(External
Time of Update: 2017-02-27
對一個伺服器程式想統計每秒可以處理多少資料包,要如何做?答案是用處理資料包的總數,除以累記處理資料包用的時間。這裡要指出的是, 運行一段程式,使用的cpu時間,跟實際啟動並執行時間是不一樣的。附例如下:private void ShowRunTime() { TimeSpan ts1 = Process.GetCurrentProcess().TotalProcessorTime; Stopwatch stw = new Stopwatch(); stw.