線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1407
推到 Plurk!
推到 Facebook!

請問原本Turbo c之程式可否移植至BCB中執行?

尚未結案
ohsula
一般會員


發表:12
回覆:17
積分:5
註冊:2004-03-02

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-03-09 23:40:16 IP:61.229.xxx.xxx 未訂閱
想請問各位大大: 我有一Turbo C之程式,用來透過GPIB Card控制週邊儀器,達成自動化量測之功能。 因為Turbo C本身就有很好的I/O控制介面,不知BCB是否承襲了Trubo C之I/O控面介面,還有,之前在TC內include "dos.h"內,利用函式delay()可寫成一計時器,在BCB中是否可不用Timer寫成一計時函數?我原本在TC內include的H檔案,可否直接轉至BCB的include檔內? Auston Huang
------
Auston Huang
bruce0211
版主


發表:157
回覆:668
積分:279
註冊:2002-06-13

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-03-10 08:47:17 IP:211.21.xxx.xxx 未訂閱
當您更熟悉 bcb 後便不會在問這種問題了 一個是程序性的語言,一個是事件導向性的語言 要怎麼說呢 ....就算可以轉, 也不是一句話"可,或不可"就能回答的 如果什麼都要沿用,什麼都要相同 建議長官還是回去用 Turbo c 好了 既然要轉移平台,就要想辦法將過去的都忘掉 p.s.不知delay()跟 bcb 中的sleep()有無相似,sleep()是暫停若干時間的函式
axsoft
版主


發表:681
回覆:1056
積分:969
註冊:2002-03-13

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-03-10 09:36:50 IP:61.218.xxx.xxx 未訂閱
引言: 想請問各位大大: 我有一Turbo C之程式,用來透過GPIB Card控制週邊儀器,達成自動化量測之功能。 因為Turbo C本身就有很好的I/O控制介面,不知BCB是否承襲了Trubo C之I/O控面介面,還有,之前在TC內include "dos.h"內,利用函式delay()可寫成一計時器,在BCB中是否可不用Timer寫成一計時函數?我原本在TC內include的H檔案,可否直接轉至BCB的include檔內? Auston Huang
ohsula您好:    1.如果在Windows下控制GPIB(IEEE488.x),如果您的GPIB Card是標準的NI Card
  便可以上 http://NI.com下載IEEE488.x或VISA Library    2.在Windows下控制便可用Visa Library或 IEEE488.x來控制GPIB Instrument Control
  我個人是用VISA Library來控制,速度上VISA的速度比IEEE488.x的速度慢,原
   因不外乎VISA包裝的比較完整,相對速度上慢了一點.    3.C   Builder 可以用 Sleep(50) <----Delay 50ms,也可以用TTimer元件來當
  計時器但時間並不是很準確...,站內也有一些精密計時的文章..    4.如果您要在Windows下 控制I/O控制介面在Windws 9x跟Windows2k/XP/2003
  下 Command,必須用兩種方法解決.....單一方法並不適用兩種平台
  C   Builder 本身已經把OutPort/ Inport.....等等類似的函式Function拿
  掉了必須另外寫,或者用VCL/DLL元件來彌補...站內有許多文章...自行查詢.    5.誠如bruce0211 兄所說的...在Windows下寫程式必須忘了DOS設計程式的一些
  觀念,畢竟C   Builder是物件導向的程式語言設計,Turbo C是結構化程式語
  言設計....觀點有很大的差異...,C   Builder還是可以寫Console Mode
  (模擬DOS) 環境下的程式.    6.用C   Builder設計程式...我想你會漸漸愛上它...    >    < class="code">/*生活是一種藝術,用心生活才能享受生活*/
發表人 - axsoft 於 2004/03/10 09:50:42
ohsula
一般會員


發表:12
回覆:17
積分:5
註冊:2004-03-02

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-03-11 23:12:21 IP:61.229.xxx.xxx 未訂閱
我所謂的delay()函數,以下面程式碼為例:    #include  void delay1 (double s) { unsigned int t; do{ if (s <= 0.9) { t = s*66666.66; delay2(t); s=0; } else { delay1(0.9); s=s-0.9; } }while(s>0); } void delaym (double ms) { delay2(ms*66.666); /* 1mS /15uS = 66.666 */ } 在BCB中,是否也可直接include ,直接加入此函數呢? Auston Huang
------
Auston Huang
axsoft
版主


發表:681
回覆:1056
積分:969
註冊:2002-03-13

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-03-12 09:46:47 IP:61.218.xxx.xxx 未訂閱
引言: 我所謂的delay()函數,以下面程式碼為例:
#include 
void delay1 (double s)
{
   unsigned int t;         do{
        if (s <= 0.9)
        {
           t = s*66666.66;
           delay2(t);
           s=0;
        }
        else
        {
           delay1(0.9);
           s=s-0.9;
        }
     }while(s>0);
}    void delaym (double ms)
{
   delay2(ms*66.666);                 /* 1mS /15uS = 66.666 */    }    在BCB中,是否也可直接include ,直接加入此函數呢?
Auston Huang
ohsula您好:
可以的,但不需#include     您只需把delay1,delay2....等等自訂函數裡頭的delay換成Sleep就行了
除非您的Time delay不是用delay()函式,而是用迴圈來達成的.
基本上Turbo C下寫的語法只要符合Ansi C/C++的規則都可以正常在C++ Builder中使用,
只是建議您把C/C++的基礎打好....到Windows上寫程式只是語法跟觀念的改變,並沒有太大的差異的.    有疑問再來討論..
/*生活是一種藝術,用心生活才能享受生活*/
發表人 - axsoft 於 2004/03/12 09:49:52
系統時間:2024-11-22 22:30:02
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!