←検索窓の楽しみ方
  ショッピングモール  掲示板ランキング


【掲示板ご利用上の注意】

 ※題名は具体的に!
 ※学校の課題の丸投げ禁止!
 ※ソースの添付は「HTML変換ツール」で字下げ!
 ※返信の引用は最小限に!
 ※環境(OSとコンパイラ)や症状は具体的に詳しく!
 ※返信付き投稿の削除は禁止!
 ※マルチポスト(多重投稿)は慎んで!

 詳しくはこちら


 本当はこんなに大きく書きたくはないのですが、なかなか守っていただけなくて…。
 守ってくださいね。お願いします。(by管理人)

C言語ソース⇒HTML形式ツール   掲示板1こちら


管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    記事検索    ログ    タグ一覧

No.4255

WiinAPI 他OSでもOK?
投稿者---ワンダ―(2005/07/09 19:16:57)


[質問すること自体愚かな内容かもしれませんが]
 プログラミング初心者ですが、現在VC++を使用し、Cを独学中です。CやC++でWinソフトの様な「画面(グラフィック)」を作る事はできませんか?
 WinAPIを使用してもいいのですが、APIを使って作製したプログラムでも、他OS(マックなど)でも起動するのでしょうか?
 低レベルな質問で恐縮ですが、是非ご教示お願いします


この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:WiinAPI 他OSでもOK? 4256 Blue 2005/07/09 19:24:24


No.4256

Re:WiinAPI 他OSでもOK?
投稿者---Blue(2005/07/09 19:24:24)


Win32 APIとは



この投稿にコメントする

削除パスワード

No.4257

Re:WiinAPI 他OSでもOK?
投稿者---円零(2005/07/09 19:53:19)


それ見ても、他のOSで使えるとも使えないとも書いてませんね。


まあ使えませんけどね。


この投稿にコメントする

削除パスワード

No.4258

ありがとうございます
投稿者---ワンダ―(2005/07/09 20:38:18)


参考になりました。APIってOSを利用するものなんですね。
WIN、MAC双方で利用できるプログラムってどうしたら作れるんでしょうか?


この投稿にコメントする

削除パスワード

No.4259

Re:ありがとうございます
投稿者---RiSK(2005/07/09 22:10:55)


>WIN、MAC双方で利用できるプログラムってどうしたら作れるんでしょうか?

OS/API の違いを吸収できるライブラリを使う。
なければ自作。
#if とか使ってがんばる。


この投稿にコメントする

削除パスワード

No.4260

Re:ありがとうございます
投稿者---Ban(2005/07/09 22:13:35)


>WIN、MAC双方で利用できるプログラムってどうしたら作れるんでしょうか?

C の互換性はコンパイル時の静的なものなので、
各環境用にソースをコンパイルすることになります。

コンパイル済みの実行モジュールをそのまま両方で動かすのは
現在のところ現実的ではありません。
目的がこれなら、向き不向きの問題でJavaなどの他言語を考えた方が、
面倒な部分をかなりVMがやってくれるのでC で作るよりは楽に
クロスプラットフォームになると思います。

そして、各環境用にコンパイルをし直してもかまわなくて、
でもソースを共通にしたい場合、以下の対応をするのが一般的です。

・まず、画面表示まわりと、実際の処理を分割して設計します。
 「MVC」などを調べてもらうと参考になるかと思います。

・次に、実際の処理はCの規格にきちんと準拠したコードにします。
 特定のコンパイラでしか動かないコードを書いてしまうと他の環境で
 誤動作などの原因になります。
 それでも環境依存の部分が出ますがこれは個別に対処しかありません。
 あらかじめ予期したコードを書くか、局所的にマクロ切り替えなどします。

・そして、GUIまわりは直接APIなどを使わずにラッパーを利用します。 
 間にライブラリの関数を一枚挟んでおいて、プログラムからはそれを
 使い、リンクするライブラリを環境毎に切り替える方法です。

 API一個一個を自分でラッピングするのは面倒ですが、
 探せばいくつかのライブラリがオープンソースなどで公開されてます。
 GUI は C++ のものが多いですが、C のものも多少あります。
(参考:http://namazu.org/~satoru/pub/uu-2004-08)

 C 言語に限定すると GTK が有力な気がしますけど..好みのものを探してください。


この投稿にコメントする

削除パスワード

No.4261

Re:ありがとうございます
投稿者---Ban(2005/07/09 22:29:43)


数年前にちょっと使っただけで、今もメンテされてるかは分かりませんが
microwindows とかはX用のWin32互換ライブラリでしたね。
# CreateWindow("BUTTON", ...) とかして ShowWindow して、
# GetMessageして、TranslateMessage して....。

実用になるかは別にして、探せばこんなのもあるかもしれません。



この投稿にコメントする

削除パスワード

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    記事検索    ログ    タグ一覧




掲示板提供:Real Integrity