Thursday, March 27, 2014

Thursday, March 20, 2014

清空記憶體的函數

memset(elems, 0, sizeof(*elems));

bzero(buffer, sizeof(buffer));

Floor and ceiling函數

請參考資料
http://en.wikipedia.org/wiki/Floor_and_ceiling_functions

重要的圖片轉檔技巧 - 將Visio圖檔轉eps檔 (for win 7, 64 bits)

最近幾天電腦開始使用win7,在研究的生涯中,又要努力跑模擬做研究,最後寫Paper,不過作業系統從好用的32bits的win XP轉64bits的win7,卻出現論文圖片轉檔工具只適用32bits的系統,所以為了寫論文,經過千方百計的尋尋覓覓,終於找到對岸的一個網頁,有詳細介紹如何將Visio中的vsd檔轉LaTeX的eps檔,相關教學連結如下:

http://www.sciencenet.cn/blog/user_content.aspx?id=296490


感謝原作,解決我寫作上的困擾!

Doxgen參考資料

最近想把程式用這個整理一下
還不太會用~來學一下啦XD

http://www.stack.nl/~dimitri/doxygen/index.html

Win7改變資料權限的方法

您是否也有遇過Win7重灌資料之後
想砍的資料砍不掉的情形
如果有的話
代表咱們是同道中人
那您也可以參考一下這篇說明
希望有助您解決這些瑣碎的問題^^
http://save-coco.blogspot.com/2009/12/windows-7.html

Matlab模擬計算時間寫法

請在模擬程式加入這段程式碼
% Record the start time instance here
tStart = now;



(write your Matlab simulation code here)


% Record the end time instance here
tEnd = now;
% Calculate and show the total simulation time
tSim = tEnd-tStart;
disp (['Total simulation time is [' datestr(tSim,13) ']']);

ps. 灰色為註解,依照使用者需求自行決定是否加入

RAR解壓縮指令 in Linux

Windows用上癮的人,壓縮不外乎是使用WinZip or WinRAR
在Windows系統我習慣用WinRAR壓
所以來Linux就會很不習慣
怎麼辦??

我:那學學tar跟gzip的指令吧!
懶惰路人:(小聲:可以不要學嗎?)
我:....啥??哩工啥?
懶惰路人:... 可以不要學嗎?(委屈貌)
我:@#$%^ ...... 好!那就用Linux跑RAR的程式吧!
懶惰路人:真的可以嗎@@?(驚訝貌)
我:只要有心...沒有辦不到的啦!...哈哈哈!(...開始無聊學起食神了=  =)

好!廢話不多說~
到底怎麼在辦到
客觀請看這這邊......

ps. 我是以Ubuntu 10.10的系統為例,其他可能會稍微有些步驟不同~

[步驟一]
當然是先上網抓RAR for Linux的程式阿!
事不宜遲,請點選下面連結
http://www.rarlab.com/download.htm

選擇反白的RAR 4.00 for Linux
當然,如果你是使用64 bits的系統請選下面一個檔案
下載到你想存的路徑


[步驟二]
抓完了,當然就要安裝RAR程式啦!
先打開剛剛存檔的地方
我是存在"下載"的資料夾

接著按右鍵點選"以壓縮管理員開啟"來解壓縮,會出現如下圖,點選"解開"

接著會出現,點選"解開"即完成tar的解壓縮
還差一個步驟,請打開終端機到剛剛相對的路徑
先轉換為root帳號,請打指令"su",接著輸入密碼,會看到如下圖以root為開頭的指令路徑
接著請打make,安裝就完成啦:)

[步驟三]
要開始解壓縮囉!興不興奮阿...(不知道興奮的點在哪XD)
請打開終端機
然後切換路徑到要壓縮or解壓縮的目錄
這邊以解壓縮為例
請鍵入rar x <檔案名稱>
範例如下


關於所有指令,請參考以下網址






Ubuntu好用的螢幕擷取程式KSnapshot

可以參考這個網頁
http://wiki.ubuntu-tw.org/index.php?title=KSnapshot

Vim好用的初始設定

Vim可以說是一套優秀的編輯程式(使用起來的編輯效率絕對可以比Windows系統的記事本快上N倍,如果會用的話XD),其中,在寫程式常常會遇到排縮跟行數確認的問題,可以依照下列方法,即可在每次開起Vim時就做好這些基本設定
  • 先創立一個Vim的設定檔


在command鍵入vim ~/.vimrc,開始編輯Vim的設定
  • 接著鍵入以下的內容(ps. 雙引號"後面的是註解,整行不打也可以)
" show the number of line (設定顯示行數)
set nu
" channge the color of comment (改變註解顏色)
hi comment ctermfg=6
" enable the backup file (修改後存檔除了原始檔案外會另外增加一個備份檔,檔名為XXX.X~)
set backup
" show the highlight search (將搜尋後的註解標上顏色)
set hls
" enable the auto indent (開啟自動對齊)
set ai
此外,如果喜歡用space去取代tab的也可以這麼設定
set expandtab <- 這是讓tab變成space的設定
set tabstop=4 <- 這是讓按一次tab鍵產生4個space的設定

按下:wq存檔後,即可開始享受這樣設定的vim編輯環境

Wednesday, March 19, 2014

一次註解數行程式碼in Vim

你可能在有在Vim寫程式的習慣,打開一隻程式如下,妳可能會有多行需要註解的需要



可以透過以下操作來達成


  • 加入多行註解
  1. 為了確定要加入註解在某些行數,我們要先打開行數的顯示,請打
    :set nu


  2. 接著確定要註解的行數,舉例是要註解108到113行的話,可以輸入以下指令
    :108,113s/^/\/\/
  3. 完成結果如下,不難吧!

  • 刪除多行註解
  1. 剛剛產生了多行註解,如果想要一次消除,可以輸入以下指令
    :108,113s/\/\///


 有沒有很方便:)



參考文件:

Tuesday, March 18, 2014

在Windows上寫FTP腳本的做法

可以參考:
http://www.petefreitag.com/item/77.cfm

如何在C語言中用signal()函數偵測鍵盤的訊號

不知道怎麼偵測鍵盤的訊號嗎?
可以參考以下程式碼唷!

#include <stdio.h>       
#include <signal.h>

void handler1(int sig) {
    printf(" Your input is Ctrl + C\n");
    signal(SIGINT, SIG_DFL);
}

void handler2(int sig) {
    printf(" Your input is Ctrl + Z\n");
    signal(SIGTSTP, SIG_DFL);
}

void main(void)
{
    /* I/O detect */
    signal(SIGINT, handler1);
    signal(SIGTSTP, handler2);

    while (1) {
        printf("waiting ...\n");
        sleep(5);
    }
}
 
執行結果:






參考資料:
http://www.chemie.fu-berlin.de/chemnet/use/info/libc/libc_21.html

Saturday, March 15, 2014

Batch教學

有沒有遇過想要在Windows連續執行一大堆指令或程式,卻要慢慢一個一個打的困擾,如果想要讓他自動化執行,就需要用到厲害的Batch檔嚕:D

以下是Batch檔的教學,很有用,可以參考看看唷
http://bbs.nsysu.edu.tw/txtVersion/boards/msdos/M.1078700757.A.html

Wednesday, March 12, 2014

叫出系統管理員權限的終端機(Terminal)

(以win 7畫面為例)

執行步驟:
1.在任意Windows畫面下,先按鍵盤的"Windows功能鍵" + "r",會出現左下角的執行畫面
2. 鍵入cmd,再點選"確定",即可叫出在系統管理員狀態下的終端機(Terminal)



可以透過Register設定putty的預設值唷

請參考下面文章
http://eeepage.info/config-putty-setting/

Tuesday, March 11, 2014

解決用putty遠端連線使用Vim的數字鍵亂碼問題

如果您是習慣按右手邊數字鍵(number pad)及programming的人.....


是否有用過putty遠端連線到server打程式,卻不小心按到右邊數字鍵出現你不想要的效果,而強烈影響你在programming的心情呢??? (如下圖)

如果你的答案是........"有",那下面這篇專治你這種疑難雜症!!
http://cometlc.pixnet.net/blog/post/2596543-ubuntu-putty-%E4%B8%AD%E6%96%87%E4%BA%82%E7%A2%BC%E8%88%87%E6%95%B8%E5%AD%97%E9%8D%B5-%E9%8C%AF%E8%AA%A4%E5%95%8F%E9%A1%8C

修改完了你就可以開心正常的使用鍵盤右手邊的數字鍵囉:D

Monday, March 10, 2014

Working on OS X's Vim

身為一個軟體程式工作者
繼上一篇打敗在暈倒斯(windows)無法使用Vim的囧境後....
最近身為半個蘋果迷的我也要在OS X中使用Vim啦!!!

不過當你一打開Apple的Vim後.......只有 "失望", "絕望",....最後轉為"引頸盼望"

彩色Vim的編輯環境你在哪啊啊啊啊......(抖音)

不過.....
天無絕人之路
Vim在蘋果OS X也是有美麗的春天滴...... (幻想一下有彩色的情況)

可以滴!真的可以滴!!!
經過千方百計、千錘百鍊,我.......終....於............找到那套武功心法了~~
說來有點難其實不怎麼難
客官們,隨我一起來用彩色Vim (寫程式)練武功.....


修改步驟如下:

  1. 先打開你Apple電腦的終端機(Terminal)
  2. 輸入以下指令
    cd ~
    vim .vimrc
    用意是在家目錄下創造一個Vim預設讀取的檔案(.vimrc)
     
  3. 打開Vim後,請貼上以下兩行文字在.vimrc之中
    filetype plugin indent on
    syntax on
    按下esc鍵,並輸入:wq存檔離開
  4. 最後,重新打開剛剛的文件你就會發現............世外桃源!(彩色來報到!!!)
    有沒有很感動阿XD
是不是很容易阿:)

參考資料:
http://vim.wikia.com/wiki/Turn_on_syntax_coloring_in_Mac_OS_X

Working on Win 7's Vim

如何在Win7上安裝Vim這個編輯器,可以參考以下這篇文章

http://ncowboy.wordpress.com/2010/06/28/win7%E4%B8%8B%E9%9D%A2%E5%AE%89%E8%A3%85vim/

即可完成安裝!
以下是開始Vim的方法

方法一:用Gvim開啟(對檔案按右鍵用Vim編輯即可)
Gvim打開後的編輯畫面如下

方法二:用Command視窗開啟,下vim <file name>即可
終端機下的Vim如下畫面
可以開始在Windows使用彩色的Vim編輯你,有沒有很感動阿....
(ps. 我最近根本就是對Vim成癮了XD)


終於會使用Apple的Time Capsule登入囉

請先將Time Capsule的網路架設好
接著開啟網路硬碟的帳號,如下:

在Windows (以Win7為例)下的IE或檔案夾路徑鍵入

\\<ip address>

Example
\\140.118.122.123

再輸入你剛剛所創立的帳號密碼,即可登入TC的網路硬碟唷:)

消除Windows產生的斷行符號

在Linux下工作,應該會有遇過把Windows編輯過的文件丟過來卻無法執行
尤其是bash, shell script之類的程式
這個主要原因是因為Linux的斷行符號($)跟Windows的斷行符號(^M)不同
在Linux可以使用以下的指令來查看之間的差別

cat -A <file name>

如果真的在各行的字尾發現有^M
請輸入以下的指令來移除

doc2unix -k <file name>

最後再用上述cat -A指令查看一次,應該就移除成功了:)


如果比較舊的OS找不到doc2unix的指令,可以參考以下連結的方法二唷!!!
http://vincent-minute.blogspot.tw/2008/10/windowsm.html

如何通道編號計算2G與5G Wi-Fi系統的中心載波頻率

2G band Wi-Fi:
  • Center Frequency (in MHz) = 2412 MHz + (Channel No. - 1) * 5 MHz

5G band Wi-Fi:
  • Center Frequency (in MHz) = 5000 MHz + Channel No. * 5 MHz

Matlab隱函數繪圖

繪圖指令
ezplot(fun, [range])
舉例
ezplot('sqrt(x^2+y^2)/1000-0.5', [-510,510,-510,510]);

自製個人網頁小圖示(icon)

相信有些喜歡自己做網頁的玩家,除了做出自己獨一無二的網頁外
也希望外加個人的網址小圖示以做區分,到底怎麼製作跟加入自己的網頁呢?
可參考以下範例:

參考範例:
http://twweeb.org/shortcut-icon/

Learning the Socket Example

I have studied several socket's information on the website.
However, less information provide the fully example for TCP client/server
Reader can refer to the following link

Example
http://www.cs.odu.edu/~cs476/fall03/lectures/sockets.htm

Source code
http://www.cs.odu.edu/~cs476/SocketProgramming/c/

Friday, March 7, 2014

How to use the VIM editing tool?

如何得心應手的使用VIM呢?以下是本人的使用手冊:

1. 首先,先設定一些VIM的初始設定,參考下面連結
http://pclin1984.blogspot.tw/2014/03/vim.html

2. 接著是一些基本操作:
https://sites.google.com/site/pensive1101/linux/vim

文字取代篇:
Case 1: 單一字元取代(並進入編輯模式)
在一般模式下,先將滑鼠至於要取代字元上,按下s,即可開始編輯文字

Case 2: 字串取代(並進入編輯模式)
在一般模式下,在欲取代的字串第一個字按下v,用方向鍵左右移動游標到最後一個字,按下s,然後可開始編輯文字

Case 3: 整行文字取代(並進入編輯模式)
在一般模式下,在欲取代的行數按下Ctrl+v,在按下s,即可開始編輯文字

Case 4: 整行文字取代(並貼上)
在一般模式下,在欲取代的行數按下Ctrl+v,在按下p,即完成取代貼上的動作


shift + ↑ : 上一頁 (page up)
shift + ↓ : 下一頁 (page down)


3. 特殊操作

以螢幕比較大的case來講,想同時開兩個視窗來比對(or編輯),可以使用
:vs 檔名

兩個視窗之間的切換可以按
Ctrl+w 在按w

查詢篇:
: + f :查詢目前開啟檔案位置