C'deki soket kitaplığı hakkında birkaç sorum var. Sorularımda değineceğim bir kod parçası.
char recv_buffer[3000];
recv(socket, recv_buffer, 3000, 0);
- Recv_buffer'ın ne kadar büyük olacağına nasıl karar veririm? 3000 kullanıyorum ama keyfi.
recv()
arabelleğimden daha büyük bir paket alırsa ne olur ?- Recv'yi tekrar aramadan tüm mesajı alıp almadığımı ve alınacak hiçbir şey olmadığında sonsuza kadar beklettiğimi nasıl bilebilirim?
- Sabit bir alana sahip olmayan bir arabellek yapabilmemin bir yolu var mı, böylece alan tükenme korkusu olmadan ona ekleme yapmaya devam edebilir miyim? belki kullanarak
strcat
son bitiştirmek içinrecv()
tampon yanıtı?
Birinde birçok soru olduğunu biliyorum, ancak herhangi bir yanıt için çok minnettar olurum.