- ベストアンサー
cでなぜguiアプリが作成出来るのか。
cでなぜguiアプリが作成出来るのか。 現在cについて学習中です。 テキストエディタで書きターミナルで実行しています。 cではアプリが作れるようになるといいますが 現在のままではcuiのソフトしかできる気がしません。 一般的に言われるアプリケーションというものを 作成するにはまた別の手段が必要なのでしょうか。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
C言語の標準関数では出来ませんね。 Windowsであれば、WindowsAPIと言う関数群を使ってウィンドウを作成したり、ウィンドウをコントールする事が出来ます。 昔のMS-DOS時代であれば、直接VRAM(画像メモリ)をポインタで操作出来ましたので、VRAMに直接書いていました。 WindowsAPIについて紹介しておきます。 「Win32 API入門」Win32は、WindowsAPIの32bit版と言う意味です。 http://wisdom.sakura.ne.jp/system/winapi/index.html C言語の知識としては、ポインタから構造体まで使いますので初心者にはムチャクチャ難しいです。CUIが自在に組める人でも挫折者がいますからね。 そうそう、CUIでもこのぐらいは出来るよと言う例も書いときますね。 http://hp.vector.co.jp/authors/VA016117/cprog/index.html 参考にしてください。
その他の回答 (2)
- jacta
- ベストアンサー率26% (845/3158)
規格厳密合致プログラムは無理ですが、外部コマンドを利用すれば、標準関数だけでGUIを作ることも不可能ではありません。 具体的には、下記のようにです。 #include <stdio.h> int main(void) { static const char script[] = "button .b -text ボタン\n" "pack .b\n"; FILE *fd = fopen("script.tcl", "w"); fputs(script, fd); fclose(fd); system("wish script.tcl"); return 0; } ただ、普通はGUIを作るためのライブラリ等を使う必要があります。 当然、そのライブラリ等の知識を得る必要がありますし、ライブラリ等をインストールする必要が出てくる場合もあります。
- qaqa246
- ベストアンサー率27% (45/163)
Cの標準規格ANSIだけでは無理です。 だから別途ライブラリを利用します。 有名どころだとWindowsだとWin32API(ただしWindowを作るだけと言うよりWindows全体をカバー)やそのラッパーになるMFC。 UNIXの世界だとGTK+やQTなど ただし厳密にはその別途利用されているライブラリもCで書かれている場合があります。 また、Windowアプリの場合、そのWindowsそのものを各ライブラリを利用してCを利用して書くこともできますが リソースとして用意しておく場合もあります。 それとGUIアプリってCよりC++の方が向いている気がするよ。勉強するならC++やった方がいいと思う。
お礼
参考になりました。 お時間を回答に割いていただきありがとうございます。
お礼
リンク先まで掲示していただきありがとうございます。 参考になりました! お時間を回答に割いていただきありがとうございます。