Gcc

基本 GUI 應用程序 Cygwin

  • April 13, 2020

如何擴展以下程序以在 Windows 上的 Cygwin 中顯示基本 GUI 元素按鈕?

#include <stdio.h>

int main(int argc, char **argv) {
 printf("Hello, World!\n");
}

並編譯執行。

gcc hello.c -o hello.exe
./hello.exe

如果沒有一些特定的 GUI 庫,你就無法做到這一點,因為標準C99 或 C11 沒有定義任何東西。

順便說一句,你應該編譯gcc -Wall -g hello.c -o hello.exe; 你真的想要所有的警告和調試資訊。

您可能會考慮使用一些跨平台的 GUI 庫GTKlibsdl或(在 C++ 中)Qt。您需要在使用它之前安裝它,當然還需要將其他參數傳遞給gcc-I源文件之前的幾個指令,從高級到低級的幾個-L指令和庫)。-l請注意,參數的順序gcc很重要。您可能希望使用GNU make作為您的建構器,使用您自己的Makefile

(我不了解 Windows,我推薦 Linux;也許某些系統提供的 Windows GUI 庫可以從 Cygwin 使用)

然後,您的程序將成為事件驅動的,事件循環通常由 GUI 庫提供。它將變得更加複雜。

您可以(而不是桌面 GUI 方法)考慮使您的程序成為一些專門的 Web 伺服器;然後,您將使用一些 HTTP 伺服器庫(我知道libonion,但它可能尚未移植到 Windows),您的程序將成為可通過瀏覽器使用的 Web 應用程序,並且還應該是事件驅動的。

引用自:https://unix.stackexchange.com/questions/241758