全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1179
推到 Plurk!
推到 Facebook!

請問如何辨識作業系統

尚未結案
jackyung
一般會員


發表:22
回覆:46
積分:13
註冊:2004-01-24

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-08-25 14:39:20 IP:220.131.xxx.xxx 未訂閱
我要用 C 寫一個可依各作業系統(Windows, Unix...)做適當處理的原始碼, 即選擇適當的程式碼做編譯,可是要如何知道目前編譯環境下是在哪種作業系統 發表人 - taishyang 於 2004/08/25 16:35:24
nlj859
資深會員


發表:139
回覆:375
積分:322
註冊:2004-03-20

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-08-25 15:06:01 IP:163.28.xxx.xxx 未訂閱
Hello jackyung, 請參考底下連結: http://delphi.ktop.com.tw/topic.php?topic_id=19528
jackyung
一般會員


發表:22
回覆:46
積分:13
註冊:2004-01-24

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-08-25 22:45:50 IP:220.131.xxx.xxx 未訂閱
不是啦,我是想在編譯時期就知道在哪個作業系統,不是只有 Windows, 你引用的是在 Windows 執行時期
conundrum
尊榮會員


發表:893
回覆:1272
積分:643
註冊:2004-01-06

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-08-26 00:27:38 IP:61.64.xxx.xxx 未訂閱
引言:不是啦,我是想在編譯時期就知道在哪個作業系統,不是只有 Windows, 你引用的是在 Windows 執行時期
請自重一下 互相尊重 nlj859 兄 雖po有關windows系列os判斷 請問一下 所謂的作業系統 一共有幾種 100 200 300 400 Unix 下有幾種 先自行了解 才能判斷把 類似這樣的問答 請問如何把Linux變windows 或 請問如何開發全面跨平台os運作 這樣的問者 本身缺乏討論之態 既然有人回應就應該深思別人給的方向答案 是善意 是有錯誤引導 是部份答案 你寫 機械語言 組合語言 java QT C TC VC WEB HTML 都不是重點 重點是你應先知道 到底有幾種 X86 Mac 先了解 要一魚通ㄘ SUN 早比MS賺錢了 但不代表你不可以 但你得先要跳脫既有理論 光Linux最少就有40種 Unix 最少就有10種 有x86 非x86 我想台上一分鐘 台下十年功
pwipwi
版主


發表:68
回覆:629
積分:349
註冊:2004-04-08

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-08-26 01:05:30 IP:211.76.xxx.xxx 未訂閱
jackyung你好: 如果針對你的需求,運用#define或#ifdef比較適合。Borland的vcl原始碼也是這樣在處理Windows和Linux平台的不同。
conundrum
尊榮會員


發表:893
回覆:1272
積分:643
註冊:2004-01-06

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-08-26 01:35:23 IP:61.64.xxx.xxx 未訂閱
Borland的vcl原始碼也是這樣在處理Windows和Linux平台的不同 關於 Borland的方式 應說只針對某些OS 並非都可 Awstats-web http://www.gocar.idv.tw/cgi-bin/awstats.pl 作業系統 (前 10) - 全部列出/版本 - 無法得知 真要 跨平台 Borland的可能不是最ez 但也許可以說某條件下最有效率的工具 c java perl
jackyung
一般會員


發表:22
回覆:46
積分:13
註冊:2004-01-24

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-08-26 03:17:17 IP:220.131.xxx.xxx 未訂閱
不知 C 的編譯器有沒有提供什麼識別字來告知是替什麼作業系統做編譯的 目前我的做法如下做一個引入檔,但得手動去更改 /*------------------------------------------------------------------------ SYSSELEC.HPP v1.0 Copyright CoolMan, 2004 All Rights Reserved 這個引入檔是為了統一平台的選擇,須依不同平台來決定編譯的程式碼只要引入 此檔,再依如下的方式使用即可 #if (SysSelect == _WIN32_CoolMan) // 程式碼 #endif 同一套的程式拿到不同平台編譯時只要修改 SysSelect 巨集即可, 當然不同平台的代表編號須再增添 ------------------------------------------------------------------------*/ #if !defined(__SYSSELEC_HPP_CoolMan) #define __SYSSELEC_HPP_CoolMan // 平台的代表編號 #define _WIN32_CoolMan 1 // WIN32 平台 #define SysSelect _WIN32_CoolMan // 在此變更選擇的平台 #endif /* #if !defined(__SYSSELEC_HPP_CoolMan) */ 發表人 - jackyung 於 2004/08/26 03:45:23
系統時間:2024-07-01 17:31:07
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!