[Linux] Re: c ve mysql

---------

New Message Reply About this list Date view Thread view Subject view Author view

From: Serdar KÖYLÜ (serdarkoylu@fisek.com.tr)
Date: Thu 18 Jul 2002 - 13:42:19 EEST


Selamlar..

Console cihazlarinin hemen hemen hepsi ANSI Escape Sequence desteklidir. Bu ne demektir ? Scroll, newline, bold gibi cls komutuda ekrana yazilan bir ANSI Escape koduyla belirlenir demek.

/etc/termcap'i acin, satir satir okuyun. Environ table'den TERM degiskeninin degerini alin. Bu degerle baslayan satiri ("DEGER|" seklinde, mesela Linux Console icin, "linux|" seklinde) bulun. Bu satir ve ardindan gelen satirlarda ":cl=" stringini arayin (strstr(..)). Bu esittirden sonra tekrar ":" ya kadar olan bolumu elde edin. "\E" leri "\033" yapin. Elde ettiginiz stringi, printf ile ekrana basin.

Bir ekrani sildirmek icin 50 satir kod yazmak ? Ama ayni metotla koyu yazma icin vs. gerekenleri de elde edebilirsiniz. Sadece cls/clear komutunu istiyorsaniz, bu pek cok terminal icin "\033[H\033[J" seklindedir. Bu stringi stdout'a yazarsaniz ekrani temizler. Ornegin C vs kullanmadan:

$ echo -e "\033[H\033[J"

ekrani temizler. DOS'un eski ANSI SYS'si icin bu string "\033[2J" seklindedir. Portability onemliyse, bunu aklinizda tutun. "\033" Esc tusunun ASCII degeridir (Scan kodu 0x01 idi sanirim)..

Bir clear screen icin koskoca library'leri bellege almanin esprisi olmaz. Ufak tefek isler icin ayakustu bir kac kod yazmak daha iyi olur..

Saygi ve sevgiler..

 
On Thu, 18 Jul 2002 13:23:48 EEST
Savaş İREZ <savas@outlandscafe.com> wrote:

> Mysql için libmysqlclient idi sanırım kullanacağınız kütüphane.
> uconio kutuphanesi icinden çıkan u_clrscr() fonksiyonu isinizi görür.
> Yalnız bi konuda ufak bi uyarı, bazen garip sonuçlar verebiliyor bu kütüphane.
> Derlerken uconio yu kullandığınızı belirmeyi unutmayın compile satırında.
> Savaş
> 15 Jul 2002 21:17 EEST tarihinde yazmışsınız:
>
> > (clrscr() yok degil mi ??)
> > clrscr(); fonksiyonun yerine getirmesi icin:
> >
> > for(i=1;i<80;i ){printf("\n");}
> >
> > soyle bir dongu kurdum, fakat satir sonunda bittigi icin pek ise yaramiyor
> > baska bir onerisi olan var mi ??
-----------------------------------------------------------------------
Liste üyeliğiniz ile ilgili her türlü işlem için
http://liste.linux.org.tr adresindeki web arayüzünü kullanabilirsiniz.

Listeden çıkmak için: 'linux-request@linux.org.tr' adresine,
"Konu" kısmında "unsubscribe" yazan bir e-posta gönderiniz.
-----------------------------------------------------------------------


New Message Reply About this list Date view Thread view Subject view Author view

---------

Bu arsiv hypermail 2b29 tarafindan uretilmistir.