C gönderilen ve alınan farklı

Katılım
18 Aralık 2018
Mesajlar
9.048
Makaleler
14
Çözümler
128
Yer
Dubai
Merhaba, TCP ile C'de gönderip alınanı yazdırıyorum ancak alınan genelde son gönderilenin bir kısmı değişerek yazdırılıyor. Sorunun nerede gerçekleştiğini buldum ancak sebebini anlayamadım.

Sorun benim yazdığım şu fonksiyondan kaynaklanıyor;
C:
void strprintln(const char * str) {
    write(1, str, strlen(str));
    write(1, "\n", 1);
}

Eğer bu fonksiyonu kullanmak yerine write fonksiyonunu olduğu gibi kullanırsam alınanlar olduğu gibi yazdırılıyor ancak bu fonksiyonda bir önceki mesajı da yazdırıyor. Aşağıya kendi fonksiyonumla çıktıları ve normal çıktıları bıraktım.
Server çıktısı;

Client çıktısı;


Olması gereken çıktı;
 

Write kullanırken adresini yollayıp deneyebilir misiniz?
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…