原创 神奇的小工具boxes

boxes Boxes is a command line program that draws a box around its input text. It can remove and repair those boxes,

原创 常見命名規則 | C語言

unix like 單詞用小寫字母,每個單詞直接用下劃線”_”分割,例如text_mutex,kernel_text_address。 Windows風格(大駝峯法) 大小寫字母混用,單詞連在一起,每個單詞首字母大寫,如OpenF

原创 C語言推薦書單

關於C 關於C編程,我覺得有下面3個層次: * 基礎 - 基本語法 * 進階 - 避免常見錯誤 與 良好的風格 * 高手 - 軟件架構 基礎語法是固定的,學習起來比較容易,軟件架構則需要閱讀很多優秀的代碼來培養, 而常見的

原创 const 關鍵字 | C語言

const 的定義 任何變量的聲明都可以使用const限定符限定。該限定符指定變量的值不能被修改。對數組而言,const限定符指定數組所有元素的值都不能被修改。 例如: const double e = 2.71828182845

原创 複雜聲明 | C語言

今天看了《C專家編程》裏的’分析C語言的聲明’一章,終於懂了C語言的複雜聲明是怎麼解析的。雖然在平時寫代碼的時候用到複雜聲明的情況幾乎沒有,這裏還是做一個記錄,也是加深對C語言聲明的理解。 聲明的優先級規則 以下規則來自《C專家編

原创 通信拓撲 | bluetooth

piconet Topology(微微網拓撲結構) 分兩種,一種是BR/EDR 拓撲,一種是LE拓撲。 BR/EDR Topology(BR/EDR 拓撲) 工作在同一物理信道的2個或更多設備相互連接組成piconet。 一個p

原创 變量解析 | C語言

變量的定義與賦值 編程語言中有一個比較容易混淆的概念就是“變量的地址”與“變量的值”。因爲在編程語言中我們用同一個標號來表示這兩個東西,由編譯器根據上下文判斷它的具體含義。 讓我們看下最簡單的變量的定義與賦值: int a;

原创 git 不常用操作

把其他分支的某個提交合併到當前分支 git cherry-pick <commit id> 部分克隆 git clone --depth=14 https://github.com/angular/angular-phon

原创 git subtree教程

關於子倉庫或者說是倉庫共用,git官方推薦的工具是git subtree。 我自己也用了一段時間的git subtree,感覺比git submodule好用,但是也有一些缺點,在可接受的範圍內。 所以對於倉庫共用,在git s

原创 數組 | C語言

數組 int a[10]中的a是數組名,它指向數組中的第一個元素。但是當其做爲sizeof的操作數,或者使用&取地址的時候,要把a作爲帶個數組來考慮。 數組名與數組名取地址 先看一個例子: int a[10] = {0}; pri

原创 我是如何學習git

一開始學習git的時候,網上的git教程很多,看得人眼花繚亂,不知道如何下手。現在對git已經很熟悉了,回過頭來總結一下學習方法。 一般官方文檔是最全面,但是不一定適合快速上手。我們可以學習一些快速上手的教程,這些教程沒有官方文檔

原创 hexo使用grunt實現自動化 | hexo

本文介紹hexo使用grunt實現一些自動化操作。 開發過前端或者node.js的同學對grunt應該不陌生,如果對grunt不熟悉可略過本文。 開始使用hexo來處理靜態博客時我就遇到了問題,我的文章已經寫了很多篇了,都是mar

原创 git subtree 如何檢出指定的 tag

git subtree 如何檢出(checkout)指定的 tag 我們使用以下命令來檢出一個子倉庫: git subtree pull --prefix=<dir> <repository> <ref> 其中<ref> 可以是c

原创 BR/EDR 簡介 | bluetooth

Basic Rate / Enhanced Data Rate (BR/EDR) 射頻工作在 2.4 GHz 的 ISM 頻段。 物理射頻層的典型的操作是,一組設備工作在相同的時鐘(clock)和跳頻模式(frequency ho

原创 藍牙簡介 | bluetooth

有兩種藍牙技術體系:Basic Rate (BR) 和 Low Energy (LE)。 兩種體系都包括 設備搜索,建立連接,連接管理。 Basic Rate(BR)技術體系爲以下3種技術提供同步和異步的連接: * 數據傳輸率