原创 Linux中Makefile的編寫

   通常,在一個大型項目中,會有很多個 .c 文件和 .h 文件,這些文件互相依賴互相關聯,開發過程中需要多次修改代碼,每當修改其中一個文件的代碼時,通常需要將這些文件重新編譯一次,這個過程非常麻煩。(不停的輸入 gcc -xx xxx 

原创 單鏈表的操作_二分查找

void BinSearch(SqList* sql, EleType x) //二分查找應用於已經排序好的數據{ assert(sql); if(sql->size > 0) { int left = 0; int right = sql

原创 Linux下進度條小程序

源碼如下:簡單實現的在命令行下進行簡單的進度條顯示的功能,能模擬現實目前的進度並且用旋轉的字符表示代碼正在運行未卡住。代碼主要利用了printf的格式化輸出,以及回車符/r,在這裏%s前進行了-100的對齊,也就是左對齊100個字符。Lin

原创 LINUX下的Find命令的探索

在linux圖形化界面下,我們可以很方便的查看一個文件或者目錄查看最近修改的時間和訪問時間。但不幸的是,在linux或者unix這類操作系統,並沒有爲我們保存文件的創建日期。但是究其根本,圖形化的操作都會轉換爲相應的命令來執行。在linux

原创 柔性數組的原理

柔性數組是C中結構體中存在的

原创 單鏈表的操作_合併有序單鏈表

node* MergeList(node*& phead1, node*& phead2)//合併兩個有序鏈表  從小到大{ //判斷鏈表是否爲空 if (phead1) { return phead2;    } if (phead2)

原创 關於CPP的深拷貝、淺拷貝、寫時拷貝

首先,關於淺拷貝。

原创 關於內存對齊的感悟

內存對齊c和C++中的內存對齊內存對齊是

原创 單鏈表的操作_約瑟夫環

node* JosephCircle_OP(node*& phead, size_t del) //約瑟夫環 優化寫法  { assert(phead); node* cur = phead, *prev = phead; if(!del)