18.02.2013 Views

NCURSES ile Yazılım Geli¸stirme NASIL

NCURSES ile Yazılım Geli¸stirme NASIL

NCURSES ile Yazılım Geli¸stirme NASIL

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

•<br />

•<br />

• ˙Iki uçbirimde de aynı anda çalı¸smak.<br />

• "Çe¸sitli" kısmına daha fazla eleman eklemek<br />

<strong>NCURSES</strong> <strong>ile</strong> Yazılım Geli¸stirme <strong>NASIL</strong><br />

Hata ayıklama bilg<strong>ile</strong>rini eklemek. _tracef, _tracemouse konuları.<br />

Ncurses paketlerinin sundu˘gu i¸slevleri kullanarak termcap, terminfo’ya eri¸smek<br />

2. Merhaba Dünya !!!<br />

Curses dünyasına ho¸s geldiniz. Kütüphanelere dalmadan ve onların de˘gi¸sik özelliklerine bakmadan önce basit<br />

bir program yazarak gezegene merhaba diyelim.<br />

2.1. <strong>NCURSES</strong> Kütüphaneleriyle Derleme<br />

Ncurses kütüphane i¸slevlerini kullanabilmek için programınıza ncurses.h ba¸slık dosyasını eklemelisiniz. Programlarınızı<br />

ncurses kütüphanesiyle ilint<strong>ile</strong>yebilmek için –lncurses seçene˘giyle derleyin.<br />

#include <br />

.<br />

.<br />

.<br />

derleyin ve ba˘glayın: gcc program dosyası –lncurses<br />

Örnek 1. Merhaba Dünya !!! Programı<br />

include <br />

int main()<br />

{<br />

initscr(); /* Curses kipine giri¸s */<br />

printw("Merhaba Dünya !!!"); /* Merhaba Dünya yazdırma */<br />

refresh(); /* Onu gerçek ekrana yazdırın */<br />

getch(); /* Kullanıcıyı bekleyin */<br />

endwin(); /* Curses kipinden çıkı¸s */<br />

}<br />

return 0;<br />

2.2. ˙Inceleme<br />

Yukarıdaki program ekrana "Meraha Dünya !!!" yazıp sonlanır. Bu program curses kipinin nasıl ilklendir<strong>ile</strong>ce˘gini,<br />

nasıl ekran de˘gi¸sikli˘gi yapılaca˘gını ve curses kipini nasıl sonlandırılaca˘gını göstermektedir. ¸Simdi satır satır<br />

inceleyelim.<br />

2.2.1. initscr() hakkında<br />

initscr() uçbirimi curses kipinde ilklendirir. Bazı gerçekle¸stirmelerinde ekranı temizleyip bo¸s bir ekran<br />

göstermektedir. Ekran üzerinde curses kullanarak bir de˘gi¸siklik yapılaca˘gında bu i¸slev ilk olarak ça˘grılmalıdır.<br />

Bu i¸slev curses sistemini ilklendirip ¸su anki pencere için (stdscr olarak isimlendir<strong>ile</strong>n) ve bazı veri yapıları için<br />

bellekten yer ayırır. Bazı istisnai durumlarda bu i¸slev curses kütüphane veri yapıları için bellekten yer ayırırken<br />

yetersiz bellek yüzünden sekteye u˘grayabilir.<br />

Bu yapıldıktan sonra kendi curses ayarlarımınızı özelle¸stirmek için de˘gi¸sik ilklendirmeler yapabiliriz. Bu ayrıntılar<br />

daha sonra (sayfa: 13) anlatılacaktır.<br />

http://belgeler.org Linux Kitaplı˘gı 12 / 90

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!