- 締切済み
C言語について
今Cの基本?ぐらいまでをマスターしたので次はDOS画面以外での プログラムを書きたいのですがネットで調べたところAPIという奴で作るであっているのでしょうか? また、おすすめのAPIやAPI以外にGUI操作ができるプログラムを書くための何かみたいな物はありますか? まだ、あまりそこらへんの事がわからないので教えてください、お願いします
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- BLK314
- ベストアンサー率55% (84/152)
Visual C++ でwxWidgetsを使う方法があります。 http://codezine.jp/article/detail/553 MFCとの互換性はありませんが「MFCライク」ではあります。 将来のMFCへの移行の手助けにもなると思います。 画面の編集にはwxGladeを使います。 http://0xcc.net/pub/uu-2004-08/ 単なるリソースエディタではなく、wxWidgetsのコード自動生成機能もあります。 ただ編集方法はちょっと独自ですので、戸惑いも覚えます。 全部フリーです。
- aurumnet
- ベストアンサー率43% (51/117)
>APIという奴で作るであっているのでしょうか? APIとは、あるプラットフォーム(OSやミドルウェア)向けのソフトウェアを開発する際に使用できる命令や関数の集合のことです。ものによってはCUIのものやGUI用途のものいろいろな用途向けに作られたソフトウェア郡のことです。 >おすすめのAPIやAPI以外にGUI操作ができるプログラムを書くための何かみたいな物はありますか? win32APIを使って作ることになるんだろうと思いますが、まだハードルが高い木がしてなりません。 C+やVCなどでも良いのであれば Microsoft Visual StudioやBorland C++Builderなどをつかってみると良いかもしれません
- magicalpass
- ベストアンサー率58% (378/648)
API(Win32API)というのはWindowsの機能を引き出すシステムコールのようなものであり、これをC言語から呼び出す関数としてライブラリ化したものがWindows Platform SDKというもので、Microsoftから提供されています。 C言語で本格的なWindowsソフトを開発するのであればWin32APIを駆使して作るしかありませんが、これは現在の開発手段の主流ではなく、VC++のようなC++環境を使う方が色々と開発ツールも整っていて便利です。 VC++ならWin32APIをクラスライブラリ化したMFCがポピュラーな開発手段となりますが、.NET環境下であれば、VBと同様のより簡単なWindowsフォームアプリケーションというGUIの開発手段が使えます。これは無償で配布されている「Visual C++ 2008 Express Edition」でも使えます。(MFCは使えない) ただし、フォームアプリケーションの開発はC++/CLIというC++をさらに独自に発展させた言語環境となるので色々と勉強が必要になるでしょう。ここまで来ると、むしろ「Visual C#」のようなC#の言語環境を選んだ方が簡単なのかもしれません。 そういうわけで、現実的なGUI開発を目指すのならC言語のままではなく、C++(あるいはC#)での開発を勉強されることをお勧めします。 とはいえ、C言語のままでWin32APIを用いたプログラミングをすることに意味が無いわけではありません。APIしか頼るものがないので、自然とAPI周りの知識が深まっていくことと思います。それは将来的に開発言語をC++などに移行した後でも役に立つでしょう。 (1)C言語のままWin32APIで開発する場合 開発環境としては「Visual C++ 2008 Express Edition」が使えますが、これにはリソースエディタが付いていないので、別途フリーのリソースエディタを探してくる必要があります。(Windows Platform SDKは「Visual C++ 2008 Express Edition」には最初から組み込まれています) (2)C++に移行する場合 Windowsフォームアプリケーションの開発には「Visual C++ 2008 Express Edition」が使えますが、これは開発言語がC++/CLIになります。MFCの場合は従来のC++で開発出来ますが、「Express Edition」には付いていないので「Standard Edition」以上の有料版が必要になります。 C++とWin32APIだけの開発なら「Express Edition」で可能ですが、(1)と同様にリソースエディタを探してくる必要があります。 (3)C#に移行する場合 「Visual C# 2008 Express Edition」で(2)と同様のWindowsフォームアプリケーションが開発出来ます。.NETの開発環境としてはこちらの方が本流であり、Webアプリケーションの開発にも用いられることが多いので、こちらを習得しても損はありません。
Win32APIをいじることになるでしょうが、かなりハードルが高いです。 HSPというフリーの統合言語環境があるので、そちらでやられてはいかがでしょうか? 言語はC言語ではなくBASICに似た簡単なものですが、考え方は変わらないので。