2
A
回答
5
如果您知道客戶端和服務器都是相同的平臺等,您可以簡單地使用sizeof(float)
來確定您的緩衝區大小並從您的浮點地址複製那麼多字節。
float number = 123.45;
send(sockfd, &number, sizeof(float),0);
只要您的客戶機/服務器是不同的平臺/不同語言等你將不得不開始擔心如何可移植編碼浮動。但是對於一個簡單的方法,上面的方法可以正常工作。
+0
感謝Brian,它的工作很好。 – 2009-07-31 12:16:04
5
float f = ...;
size_t float_size = sizeof(float);
const char* buffer = (const char *) &f;
send(mySocket, buffer, float_size, 0);
如果服務器和客戶端都使用相同的平臺,此代碼將正常工作。如果平臺不同,則必須明確協商消息大小和字節順序。
3
使用文本表示法?
char buf[32] ;
snprintf(buf,sizeof buf,"%f",ret_val);
write(fd,buf,strlen(buf));
您可以讀取該字符串並用sscanf再次解析它。 (也許甚至使其行終止 - 「%F \ N」 - 所以當數結束,你就會知道)
直接的方法是簡單地
write(fd,&ret_val,sizeof ret_val);
在這兩種情況下,你應該檢查返回寫入值並在發生錯誤時採取適當的操作,或者write()寫入的字節數少於您告訴的字節數。
相關問題
- 1. 從服務器發送到客戶端
- 2. 從客戶端發送到服務器,從服務器發送到客戶端在java中
- 3. 從服務器發送值到客戶端節點js
- 4. C#客戶端。從C#客戶端發送數據到Java服務器
- 5. Java套接字從客戶端發送數據到服務器
- 6. 從服務器(Java)發送數據到Android客戶端
- 7. 從服務器發送數據到客戶端?
- 8. 從服務器發送數據到客戶端上socket.io
- 9. 從服務器發送JPA數據到客戶端?
- 10. 發送數據從客戶端到服務器在春天
- 11. 從客戶端發送字節數組到服務器?
- 12. 從C客戶端發送一個整數到Java服務器
- 13. VB.Net從客戶端發送字節數組到服務器
- 14. 定期將數據從服務器發送到客戶端
- 15. 發送數據從服務器到客戶端 - ajax
- 16. 如何將數據從PHP服務器發送到客戶端
- 17. 從客戶端發送到服務器時,參數變爲空
- 18. 從服務器發送數據到客戶端
- 19. Socket.io不從客戶端發送數據到服務器
- 20. windows RDP從服務器發送數據到客戶端?
- 21. 將數據從php服務器發送到vb.net客戶端
- 22. 發送float數組從C++服務器到C#客戶端
- 23. 通過http post發送數據從客戶端到服務器
- 24. 扭曲 - 將數據從服務器發送到客戶端
- 25. 發送數據從服務器到客戶端
- 26. 立即從客戶端向服務器端發送gridview數據
- 27. 通過客戶端從服務器發送到服務器的敏感數據
- 28. 套接字服務器 - 發送消息從客戶端到客戶端
- 29. 從客戶端發送到服務器,到另一臺服務器
- 30. 如何從客戶端的數據傳送到服務器端
如果指定發送者和接收者正在使用的語言和/或運行時,可能會有所幫助。 – 2009-07-31 11:52:23