Time of Update: 2018-12-05
1、鏈表與數組的區別A 從邏輯結構來看A-1. 數組必須事先定義固定的長度(元素個數),不能適應資料動態地增減的情況。當資料增加時,可能超出原先定義的元素個數;當資料減少時,造成記憶體浪費。A-2. 鏈表動態地進行儲存分配,可以適應資料動態地增減的情況,且可以方便地插入、 刪除資料項目。(數組中插入、刪除資料項目時,需要移動其它資料項目)B 從記憶體儲存來看B-1. (靜態)數組從棧中分配空間, 對於程式員方便快速,但是自由度小B-2. 鏈表從堆中分配空間, 自由度大但是申請管理比較麻煩
Time of Update: 2018-12-05
一、一個價值三天的BUGint fscanf(FILE *stream,char const *format,...)int scanf(char const *format,...)int sscanf(char const *string,char const *format,...)功能從輸入源讀取字元。函數的傳回值就是轉換的輸入值的數目。{int a,b;sscanf(buffer,"%d","%d",&a,&b);}{unsigned int a,b;sscanf(
Time of Update: 2018-12-05
1、清屏函數clrscr是TC特有的,其它的C語言環境沒有這個函數,也就沒有標頭檔包含這個函數。 建議使用 system("cls");來取代clrscr();比較通用,相容性好一點。 system()函數在#include <stdlib.h>裡面。 /*printf("| The program will show : |");printf("/r"); 斷行符號*/2、在VC中conio.h標頭檔中沒有gotoxy(x,y)要自己去定義.
Time of Update: 2018-12-05
一個C程式一直以來都是由以下5個段(pieces)組成:程式碼片段(text segment):存放CPU執行的機器指令(machine instructions)。通常情況下,程式碼片段是可共用的,使其可共用的目的是對於頻繁被執行的程式,只需要在記憶體中有一份拷貝即可,比如文字編輯器(text editors),C編譯器,shell等等。另外,程式碼片段也通常是唯讀,使其唯讀原因是防止一個程式意外地修改了它的指令(prevent a program from accidentally
Time of Update: 2018-12-05
藉助Cinpy和C語言解譯器TinyCC,可以在python程式裡面直接嵌入C語言片斷、不經編譯直接使用C編寫的函數了。 win2k平台上,簡單的測試對比資料如下(遞迴方法計算第四十項兔子數列fib(40))語言實現時間(單位:秒)評python官方python 2.4.3純python fib函數568.718天啊使用psyco加速的python
Time of Update: 2018-12-05
前提,areaInfoList是存在 request 或更進階別範圍的一個 List 執行個體,List元素中有area_name和area_code兩個屬性將作為select 的name和value 1、html-el:optionsCollection 用法:<html-el:select property="area_code" styleId="area_code"> <html-el:option value="">請選擇所屬省份&
Time of Update: 2018-12-05
為什麼要使用委託一、處理函數回調當一個類在設計的時候,設計者經常會遇到某個功能塊開放給該類的使用者實現的情況,這樣類設計者就需要把這個函數編碼開放出來,由於C#中取消了函數指標這個東東,所以就必須有一個類似的東西來替代這個,就是委託,比函數指標更安全的東東。程式員可以將方法引用封裝在委派物件內。然後可以將該委派物件傳遞給實際被調用的代碼塊,而不必在編譯時間知道將調用哪個方法。與C++中的函數指標不同的是:委託是物件導向,而且是型別安全的二、減少定義
Time of Update: 2018-12-05
設計原則一:找出應用中可能需要變化之處,把他們獨立出來,不要把他們和不需變化的代碼混在一起。這樣可以很容易的改動或者封裝需要變化的部分;設計原則二:針對介面編程;而不是針對實現編程。 下邊是c#代碼的實現: public interface IFlyBehavior { void Fly(); } public interface IQuackBehavior { void Quack(); }class FlyNoWay :
Time of Update: 2018-12-05
ReferenceEquals()判斷兩個字串是否指向相同的記憶體位址;Equals,先判斷兩個字串有相同的記憶體位置,則兩個字串相等;否則逐字元比較兩個字串,判斷是否相等下面舉一個例子看一下: string peom1 = "Kubla Khan"; string peom2 = "Kubla Khan"; string peom3 = String.Copy(peom2); string peom4 = "kubla
Time of Update: 2018-12-05
C++中沒有字串對象,字串可以看成是字元數組,不過它們之間又有區別。 簡單的來說就是區別在最後的一個元素"\0"上,它標誌著一串字元是否是字串。用字串初始化字元數組時,"\0"附帶在後面與前面的字元一起作為字元數組的元素。 在記憶體中,就是根據"\0"來確認字串,如果找不到就會沿著字元一直找下去。它佔用記憶體空間,但是不計入串長。
Time of Update: 2018-12-05
WESTON, Florida--Micriµm, the premier supplier of high-quality software components for embedded systems, today announced a new policy for the distribution of the source code of the popular real-time kernel µC/OS-III. The kernel is now officially
Time of Update: 2018-12-05
這幾天在看C#入門經典這本書。又有很久沒有看這些很重要忽略的基礎知識。慢慢地,認真地投入書中,感覺不錯,收穫很多。 對自己的C#術語加深了許多。很多以前的困惑點有所解�%BPOST http://writeblog.csdn.net/PostEdit.aspx HTTPernal,public,private,static等關鍵字的意義有所加深。我一直在鼓勵自己把這本書看好,從基礎做起,不要浮在表面上。 fightin!
Time of Update: 2018-12-05
本系列文章由muge0913編寫轉載請註明出處:http://blog.csdn.net/muge0913/article/details/7342935由於檔案操作網上的資源比較多,在這隻簡述下吧在Linux 系統中,有關I/O 的操作可以分為兩類。它們是基於檔案描述符的I/O 操作和基於流的I/O 操作。它們有著各自不同的特點和優勢。有些情況下它們是可以相互替代的,有些情況下則不是。基於檔案描述符的I/O 操作是通過檔案描述符對一個檔案執行I/O
Time of Update: 2018-12-05
本系列文章由muge0913編寫,轉載請註明出處:http://blog.csdn.net/muge0913/article/details/7339724與Linux 系統中的檔案相關的資訊有三項。它們是檔案的目錄結構、索引節點和檔案的資料本身。1.檔案的目錄結構系統的每一個目錄都處於一定的目錄結構中,該結構含有目錄中所有的目錄項的列表,每一個目錄項都含有一個名稱和索引節點。藉助於名稱,應用程式可以訪問目錄項的內容。而索引節點號則提供了所需引用檔案自身的資訊。2.索引節點在Linux 系統中,
Time of Update: 2018-12-05
本系列文章由muge0913編寫,轉載請註明出處:http://blog.csdn.net/muge0913/article/details/7342907訊息佇列是一系列連續排列的訊息,儲存在核心中,通過訊息佇列的引用標識符來訪問。訊息佇列與管道很相似,但使用訊息佇列的好處是對每個訊息指定了特定訊息類型,接收訊息的進程可以請求接收下一條訊息,也可以請求接收下一條特定類型的訊息。#include <sys/types.h>#include
Time of Update: 2018-12-05
本系列文章由muge0913編寫,轉載請註明出處:http://blog.csdn.net/muge0913/article/details/7342653共用記憶體是LUNIX
Time of Update: 2018-12-05
本系列文章由muge0913編寫,轉載請註明出處:http://blog.csdn.net/muge0913/article/details/7341664Linux 系統的終端處理是一個非常大的系統,需要處理許多不同類型的裝置和需求。涉及的內容包括:數據機、終端模擬、偽終端等。Linux 系統處理終端的方法是通過串列介面串連的控制台與系統通訊並運行程式。由于越來越多的廠商都參與到終端的生產,而且每個廠商都為自己的終端設計自己的命令集,所以需要有一種方法對終端的訪問進行一般化處理。Linux
Time of Update: 2018-12-05
/*編譯時間注意,要手動串連庫*/#include <stdio.h> #include <pthread.h> #include <unistd.h> #include <stdlib.h> static int value = 0; pthread_mutex_t mutex; void func(void* args) { while(1) {
Time of Update: 2018-12-05
undefined reference to 'pthread_create'undefined reference to 'pthread_join'問題原因: pthread 庫不是 Linux 系統預設的庫,串連時需要使用靜態庫 libpthread.a,所以在使用pthread_create()建立線程,以及調用 pthread_atfork()函數建立fork處理常式時,需要連結該庫。問題解決: 在編譯中要加 -lpthread參數 gcc thread.c -o
Time of Update: 2018-12-05
本系列文章由muge0913編寫,轉載請註明出處:http://blog.csdn.net/muge0913/article/details/7339933用戶端:#include <stdio.h>#include <sys/socket.h>#include <unistd.h>#include <sys/types.h>#include <netinet/in.h>#include <stdlib.h>