2009年5月29日 星期五

Zata Debugger - c/c++偵錯工具

Zeta Debugger
剛好再網路上有看到,好像還不錯,改天再來玩玩看,先記錄下來





Code::Blocks - 編譯C/C++的IDE工具

因為最近很瘋狂各種的IDE開發工具,所以發表了一堆文章,主要也是做個記錄,因為這些都是很好用的工具,隨然常用的只會有幾種,不過我想多認識一些也無妨,做個記錄日後要用到再來看.....

今天要介紹的是 Code::Blocks 這也是一款open source的軟體,同樣的可以在許多平台上操作。


網路上的教學一堆,隨便google一下就出現一堆,官方網站也有help文件,我就不浪費空間再來介紹如何使用、安裝....

以windows為例,進入下載網頁後,會有 codeblocks-8.02-setup.exe 跟 codeblocks-8.02mingw-setup.exe 可以下載,我是下載codeblocks-8.02-setup.exe,因為我已經有安裝MinGW了,我想codeblocks-8.02mingw-setup.exe應該是包括MinGW一起的(猜測...我沒去試)。

下載後執行,這套軟體有個好處,他會去偵測你系統內已經安裝的編譯器,所以會出現detected字樣,至於其他的編譯器,我想可能只是個列表說明他有支援的編譯器,以我為例他舊有偵測到除了Mingw外還有Borland c++ compiler,所以還不錯啦。

設定好之後就可以使用了,建立一個Project之後就會出現你要建立什麼樣類型的專案,並且你想存在哪裡以及專案名稱,然後就會出現一個main.c (or main.cpp),裡面好像已經有內容了,就是有名的hello world,不過應該可以從設定裡把它弄掉,有人知道嗎? 可以告訴我嗎? 感恩...

對了還有一點,因為我是自行安裝MinGW,而我安裝後裡面好像沒有gdb,所以要自行下載,這裡提供個網址 GNU Debugger for Windows 下載後搬到 " ...\MinGW\bin\ " 底下,然後再檢查CodeBlocks設定內的路徑是否正確,做個確認而已,因為CodeBlocks會以MinGW預設安裝路徑來設定,所以路徑應該不會有什麼問題。

最後我還是遇到一些debug操作上的問題,目前正待克服中,如果有人了解debug的操作,煩請不吝指導一下,謝謝。

Aptana - 開發Web Application 的IDE工具

Aptana - 開發Web Application 的IDE工具

看官方網站上的介紹,介面感覺不錯,支援的語言也很多,不過我都還不會啦....
所以先在部落格上做的紀錄,日後再回來看。

是一套open source的軟體,Windows、Linux、Mac都可使用,此外也有for eclipse-plugs可供使用....


利用Eclipse 編譯 C/C++ for Windows

因最近在學習JAVA,而用的開發工具是eclipse ,然而我也想拿來編譯C/C++的程式,所以就索性上網找一下教學,剛好有一篇蠻有名......
請參考 ==> Window+GCC+CDT用Eclipse開發C、C++

不過在此跟大家在介紹一下另一套免費開發工具 Bloodshed Software - Dev-C++ ,這套應該很多人都有用過,比較簡單安裝後即可使用,也是一套很不錯的工具。

會跟在介紹這套工具是因為eclipse步驟比較繁瑣,但不困難,不過各有各的喜好,都很好用啦~~

以下是我的環境及所使用到的軟體
Windows xp with sp3
eclipse-cpp-ganymede-SR2-win32
CDT 6.0 M6
MinGW 5.1.4

至於如何安裝即設定等..問題,請參考上面所提的文章,裡面介紹的很詳盡,照著作就不會有問題了。

接下來我就直接以我的環境為例,實作一個cpp程式:

1. File→New→C++ project

2. 出現對話框,name隨便打,選擇Makefile project→Empty Project,Toolchain→MinGW GCC(其他的Project type跟Toolchain應該也都可以選,有興趣者請自行嘗試。)

3. 在剛剛建立的Project上按右鍵 New→Source File

4. 出現對話框,檔名隨便打,要記得加附檔名 (.cpp或.c)

5. 隨便邊個檔案,就用有名的hello world吧!

6. 在剛剛建立的Project上按右鍵 New→File

7. 出現對話框,file name打makefile

8. 內容如下

9. 在右邊Make Targets工作區內的Project按右鍵 Add Make Target

10. 出現對話框,Target Name:Build(or any name) Make Target:all

11. 在剛剛建立的Build上連點二下,就會進行編譯

12. 編譯內容如下

13. Run→Run As→Local C/C++ Application

14. 執行畫面如下,出現hello world


備註:
1. 由於版本不一樣,原作者內的步驟七與我的不同,我是在Project->Properties->C/C++ Build->Settings->Binary Parse
2. 我一直不曉得該如何進入debug 模式,會出現錯誤,可是他明明有debug功能,如果有人知道麻煩請告訴我,謝謝。

2009年5月25日 星期一

各種IDE工具介紹

IDE (Integrated Development Environment)

以下節錄至wiki

集成開發環境(Integrated Development Environment,簡稱 IDE,也有人稱為Integration Design Environment、Integration Debugging Environment)是一種輔助程序開發人員開發軟件應用軟件
IDE通常包括編程語言編輯器、編譯器解釋器、自動建立工具、通常還包括調試器。有時還會包含版本控制系統和一些可以設計圖形用戶界面的工具。許多支持面向對象的現代化IDE還包括了類別瀏覽器、物件檢視器、物件結構圖。雖然目前有一些IDE支持多種編程語言(例如EclipseNetBeansMicrosoft Visual Studio),但是一般而言,IDE主要還是針對特定的編程語言而量身打造(例如Visual Basic)。

今天剛好瀏覽到ide介紹的網頁:
IDE Toolbox: 70+ IDEs for Developers

順便可以多多了解其他的開發工具,我自己本身只有用過visual c++、Dev C++、KDevelop、Eclipse...等工具。

2009年5月24日 星期日

修改Blogger的版面大小

今天來記錄一下如何自訂部落格的版面大小,由於在撰寫 利用SyntaxHighlighter在部落格上顯示程式碼 時正好遇到這個問題,故就順便作個備忘錄.....

不過其實也沒什麼心得和步驟可寫的,主要是參考別人的部落格上所教的步驟來做,請看如下:
更改blogger 部落格版面區塊寬度 from 余俊潁的部落格
如何加大網誌文章版面的顯示寬度?from 佳新的部落格
Blogger 版面加寬,圖片變大!from BMB, BlueMark Blog 湛藍馬克部落

我只有大致參考一下,其實要改多大多小全看個人,試著改改數值,然後預覽看看,多實驗個幾次就會得出自己最喜歡的大小了。
其實這類的教學有很多,多利用google就會出現一堆.......

2009年5月23日 星期六

安裝及使用Borland C++ Compiler 5.5

最近在看c++程式設計的書時,剛好閱讀到Borland C++ Compiler 5.5安裝及使用,就照著書上的步驟在配合網路上查到的資料,順便記錄在blog上。

此編譯器是Borland所提供的免費下載程式,使用這個編譯器的好處除了免費外,最大的好處是Borland是C++語法標準的主要制定成員之一,並不斷在網路上提供最新的修訂版本,可擔保我們使用最可靠的編譯器。此外此程式非常精簡,只有不到10MB的大小,卻足供c++語言的深入探討和練習,也能開發許多有用的應用程式。

建立環境:Windows xp with sp3

下載:
Borland C++ Compiler 5.5 (檔案名稱為 freecommandLinetools.exe)
Turbo Debug

直接點選執行檔,就可自動解壓縮完成初步安裝,預設安裝位置為 C:\Borland\BCC55 ,安裝後的大小約50.7MB。

要完成所有的安裝,還需要進行以下兩個步驟:



1. 將C:\Borland\BCC55\Bin加入系統檔案預設路徑。請利用UltraEdit32或任意文字編輯器修改C:\底下的autoexec.bat ,若看不到請進入資料夾選項→檢視→取消勾選隱藏保護的作業系統檔案 即可,請加入


設定了路徑之後,在任何地方皆可存放和執行c++程式,第二行DOSKEY是為了便於在DOS下使用方向鍵,以減少重複輸入指令的動作。

當然由於我的系統是xp,所以可以不用修改autoexec.bat檔案來設定路徑,有另一個方法如下:
我的電腦按右鍵→內容→進階→環境變數→系統變數→點選Path→編輯→變數值輸入 C:\Borland\BCC55\Bin;

2. 在C:\Borland\BCC55\Bin內寫兩個檔案,檔名分別為bcc32.cfg和ilink32.cfg。
bcc32.cfg 為編譯器的編譯選項指定檔,內容如下


ilink32.cfg 為聯結器的連結選項指定檔,內容如下


另外在編輯bcc32.bat 和 td32.bat,同樣是是放在C:\Borland\BCC55\Bin底下

bcc32.bat
BCC32.EXE 預設會在編譯後主動執行 ILINK32.EXE 產生執行檔。若未將 BCC 5.5 command line tools 的路徑置於 PATH 環境參數中,可以另編輯了 bcc32.bat 取代直接執行 BCC32.EXE ,以免 BCC32.EXE 無法執行 ILINK32.EXE 。 -v 和 -y 兩參數是為了配合 Turbo Debugger 進行原始碼除錯之用。


td32.bat
Turbo Debugger 在中文環境下執行時,會因為邊框而造成畫面紊亂。所以我編輯了 td32.bat ,以 chcp 指令切換到 437 字碼頁再執行 TD32.EXE 。


TurboDebugger
TurboDebugger可以配合Borland C++ Compiler使用,協助複雜程式的除錯工作。本執行檔大小為590kb。其工作原理為:『可以自由設定暫停位置,並能在暫停或因錯誤而中止時,進入記憶體檢查各個變數的儲存資料,以發現錯誤發生的位置和原因。

迅速進入DOS模式和正確路徑的設定方式
如果每一次進入DOS模式,仍然必須下指令移動到原始程式檔案的所在路徑,將不勝其煩。
為了解決這個問題,請照如下指示將命令提示字元檔案複製到我們存放程式的檔案夾內,日後只要執行此程式就可迅速進入DOS模式,同時也位於正確的路徑上。
Windows 2000 & xp
C:\WINNT\system32\
C:\WINDOWS\system32\ 下找 CMD.exe

其他Windows版本,請到
C:\WINDOWS\ 下找到DOSPRMPT
C:\WINDOWS\PIF\COMMAND\ 下找到COMMAND

如何編譯程式
以如下程式為例,請存為Test.cpp

// Hello World程式
#include <iostream>
using namespace std;
int main()
{
cout << "Hello World." << endl;
return 0;

在DOS底下請執行底下2行指令
bcc32 Test (編譯)
Test (執行)

執行結果如下

參考資料:
C++程式設計 張耀仁/碁峰資訊有限公司
How to use Borland C/C++ 5.5 Complier

利用SyntaxHighlighter在部落格上顯示程式碼

由於我是個部落格新手,也正開始在學習寫程式,上網也找了一些教學,為了記錄自己的步驟,怕日後忘記,故撰寫此文章記錄......

首先下載 SyntaxHighlighter 解壓縮後,將會有 3 個資料夾,將如下資料上傳至網頁空間:

Scripts 資料夾內的程式(*.js 與 *.swf) 。
Styles 資料夾內的 SyntaxHighlighter.css。


※由於我在google page無法上傳附檔名.js,我也不曉得為什麼,故我是申請 ucoz , 申請步驟請參考 ucoz 提供無限容量、流量的網頁空間,超過900種模版、10多種附加免費服務任你使用!

接下來在部落格按 自訂→版面配置→修改HTML 將如下範例複製到</body> </html>標籤的前面



然後之後只要在文章中將程式碼以如下形式撰寫即可


參考文章:
在 Google Blogger 中使用 SyntaxHighlighter
dp.SyntaxHighlighter 程式碼色彩顯示工具
用SyntaxHighlighter在Blog做程式語法教學說明
http://code.google.com/p/syntaxhighlighter/wiki/Usage
進階參考:
使用 Windows Live Writer + SyntaxHighlighter 整合編輯

2009年5月18日 星期一

各種開機光碟iso檔 - AllBootDisks

AllBootDisks ISO

這裡可以找到各種開機片iso檔,可以加以利用來客製開機光碟。

簡易住家網路示意圖

簡易住家網路示意圖

visio 樣版網站

visio cafe

此處有各大廠的新式設備的圖示,例IBM、CISCO、DELL ......等。


2009年5月11日 星期一

OSI模型

OSI模型

2009年5月6日 星期三

原因效果圖

原因效果圖,是藉由多方面的腦力激盪來探討問題的原因。


商業流程圖-創意廣告設計公司

這是我第一個網誌。