recv של sockets
עשיתי שתי תוכניות פשוטות של שרת ולקוח. השרת מחכה להתקשרות על פורט מסויים, מקבל את ההתקשרות ופשוט מדפיס את המידע שמגיע מהלקוח. הבעיה: מודפס לי רק או פסיק או כלום וירידת שורה. הקוד של הקבלה והדפסה:
עשיתי שתי תוכניות פשוטות של שרת ולקוח. השרת מחכה להתקשרות על פורט מסויים, מקבל את ההתקשרות ופשוט מדפיס את המידע שמגיע מהלקוח. הבעיה: מודפס לי רק או פסיק או כלום וירידת שורה. הקוד של הקבלה והדפסה:
do { char buffer[bufferSize]; memset((void *)buffer,0,bufferSize); bytesReceived=recv(receivingSock,(void *)buffer,bufferSize-1,0); if(bytesReceived>0) { cout<<argv[0]<<":"<<inet_ntoa(clientAddr.sin_addr)<<":"<<ntohs(clientAddr.sin_port)<<":"<<buffer<<endl; } }while(bytesReceived>0);
וכי למה? תודה, סלע.