From: Kenan Dogan (kndogan@yahoo.com)
Date: Sat 16 Jul 2005 - 13:46:33 EEST
Merhaba,
write(2) 'de formati soyle :
ssize_t write(int fd, const void *buf, size_t count);
Burada packet'in yer alacagi kisim : ... , const void *buf , ...
yani int degil; ya sabit (constant) ya da "char" tipi KATAR (string)
olmak zorunda. Int ve char(+array) veri tiplerinin bellekte tutulus
ve islenis bicimlerinin cok farkli oldugunu belirtirsek, sanirim
nedeni aciklanmis olur.
Calismis olmasina sevindim, esenlikler...
--- Volkan YAZICI <yazicivo@ttnet.net.tr> wrote:
> Merhaba,
>
> On Fri, Jul 15, 2005 at 03:08:33AM -0700, Kenan Dogan wrote:
> > 1) packet array'i icin int yerine char kullanmanizi ve NUL ( '\0' ) ile
> > sonlandirmanizi oneririm ( man write(2) )
>
> Bunu dün denememe rağmen bir sonuç alamamıştım. (Bilmem ki hangi
kafayla
> işe koyuldum.) Herneyse, ne hikmetse bugün çalıştı. Gerçekten çok
> teşekkür ederim.
>
> Not: Örnek kod isteyen arkadaş, ilk mesajımda gönderdiğim kodun
aynısını
> alıp "int packet" ibaresini "char packet" ile değiştirip deneyebilir.
>
> Ama halen sorunun neden çözüldüğünü anlamış değilim. write(2)'ye
bakmamı
> söylediniz ama orada bu konu ile ilgili hiçbir açıklama bulamadım. Ben
> mi bir şey kaçırıyorum acaba? Neden `int' yerine `char' kullanımının
bu
> denli önemli bir farka yol açtığını açıklayabilir misiniz?
>
> İyi çalışmalar.
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
_______________________________________________
Linux-programlama mailing list
Linux-programlama@liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama