原创 徹底搞定C指針-函數名與函數指針

轉自: 徹底搞定c指針  函數名與函數指針 一 通常的函數調用 一個通常的函數調用的例子: //自行包含頭文件 void MyFun(int x); //此處的申明也可寫成:void MyFun( int ); int main(int

原创 Linux的啓動、引導和登錄

系統加電後,首先BIOS啓動,Linux的啓動開始於BIOS從啓動設備上加載主引導記錄(MBR),MBR中的代碼從活動分區上讀取Linux bootloader(比如grub、lilo)。接着bootlo

原创 Unix時間和日期

Unix內核通過計算從1970年1月1日0點0分0秒紀元(UTC)開始經過的秒數來提供的基本時間和日期服務。在用戶層,這個值是以time_t(在Unix中以t結尾的數據類型被稱作基本系統數據類型,int的定義類型)數據類型標識的,一般被稱

原创 使用python解決的第一道算法題

閒來無事玩玩python,發現和c、perl有很多相近之處,基本語法很容易就掌握了,剛好看到一算法題,就拿來練練手。 題目:輸入一個整數和一棵二元樹。 從樹的根結點開始往下訪問一直到葉結點所經過的所有結點形成一條路徑。 打印出和與輸入整數

原创 如何使用一個指針來實現雙向鏈表操作

1、基礎 數學基礎: x ^ y ^ y = x ^ ( y ^ y ) = x ^ 0 = x 雙指針雙向鏈表結點:struct double_link_list { struct double_link_list *next;

原创 perl(1) 匹配數字

以下是常用的用來匹配數字的正則表達式: /\D/;           # 匹配非數字字符,即如果匹配成功,則目標字符串無數字字符 /^\d+$/; # 匹配不帶符

原创 一個很小的洗牌算法

根據排列組合的思想 :54張牌共有54!種不同排列,據此,可安排隨機數範圍從而定位,然後和固定的空間交換,代碼如下: #include <stdio.h> #include <stdlib.h> #include <time.h> v

原创 sed單行腳本快速參考

------------------------------------------------------------------------- SED單行腳本快速參考(Unix 流編輯器)                      

原创 北大OJ 1001題

題目:輸入一序列的正實數和冪次(正整數)對,然後打印結果(具體的比這個精細) 這道題是關於大數計算的(大數求冪),從開始建立思路,到寫代碼、調式到最後被AC以及最終的優化,總共用了差不多一天的時間。開始AC時使用空間500K,時間37MS

原创 IO特性(2) Unix標準IO緩衝(buffering)

系統調用write向用戶空間的應用程序提供了向特定文件(硬盤文件,設備文件,FIFO文件等)寫的功能。瞭解驅動程序的程序員應該知道使用類似write(ioctl,lseek,select)這樣的系統調用的

原创 鏈表創建的三種方法

作爲最常用的數據結構之一,鏈表被廣泛應用在各個方面,下至操作系統底層的驅動程序上至各種應用軟件, 都處處可以看到鏈表的身影,皆因其操作的簡便與應用的高效性。總結個人目前所學,鏈表的創建方式主要有以下幾種方

原创 IO特性(1): socket相關的幾個高級IO函數(Unix網絡編程筆記)

Subject: Advanced I/O Function 1: There are three ways to set timeout(block):     First,signal driver: relying on the