D.3.1. Örnek Windows Konsol Uygulaması
Windows konsol programları, Windows API tarafından sağlanan ek işlevselliğe sahip basit DOS veya unix karakter modu programları gibidir.
#include <windows.h> #include <stdio.h> int main (int argc, char * argv[]) { int i, c; char mesaj[80]; char cikti[1000]; size_t cboy = sizeof(cikti); printf ("Mesajinizi girin: "); fgets (mesaj, sizeof(mesaj), stdin); c = snprintf (cikti, cboy, "Merhaba, benim ismim %s.\n", argv[0]); if (cboy > c) c += snprintf (cikti+c, cboy-c, "Argumanlarim sunlar"); for (i=1; i<argc; i++) if (cboy > c) c += snprintf (cikti+c, cboy-c, ", %s", argv[i]); if (cboy > c) snprintf (cikti+c, cboy-c, ".\nMesajiniz: %s", mesaj); MessageBox (NULL, cikti, "Ornek Windows Konsol Uygulamasi", MB_OK|MB_ICONINFORMATION); printf ("Program bitti.\n"); return 0; } /* main */
Örneğin, Altkısım 4.2.3’te verilenin basit bir
uyarlaması olan yukarıdaki program Windows API’deki
MessageBox
fonksiyonunu kullanır. Bu fonksiyon ve
MB_OK
ile MB_ICONINFORMATION
değişmezleri
windows.h
başlık dosyasında bildirilmiştir. Bu programı
Windows altında Cygwin ortamında derlemek için özel bir şey yapmaya gerek
yoktur. Önceki kısımlarda anlatılan komutlarla derlenip, örneğin
winkon.exe
isminde bir yürütülebilir dosya ortaya çıktığını
düşünelim. Bu dosyayı aşağıdaki gibi çalıştırdığınızda:
$ ./winkon.exe BIR IKI UC Mesajinizi girin: C iyidir! Program bitti.
alttaki pencere görüntülecektir: