我正在使用C++,並想知道如果我可以通過網絡(使用基本套接字)發送整個int數組而不做任何事情。或者我必須分開數據並一次發送一個數據?是否可以通過網絡發送數組?
3
A
回答
2
你肯定可以發送一個數組,但你可能想做一些額外的工作。在接收端有正確解釋它的問題。例如,如果使用不同的機器體系結構,則可能需要將整數轉換爲網絡順序(例如htonl)。
要記住的另一件事是內存佈局。如果它是一個簡單的整數數組,那麼它將在內存中連續存在,並且單個發送可以成功捕獲所有數據。但是,如果(這可能很明顯),你有一個數組與其他數據,那麼佈局肯定需要考慮。一個簡單的例子就是如果數組有指向其他數據的指針(例如字符串),那麼數組的發送將發送指針(而不是數據),並且對接收器來說是沒有意義的。
3
是的。
數組將按順序排列在內存中,因此您可以自由地執行此操作。只需傳入第一個元素的地址和數據量即可發送所有數據。
相關問題
- 1. 是否可以通過ksoap2發送一個基元數組?
- 2. GridGain網絡連接:是否可以通過SSH轉發節點?
- 3. 通過網絡發送UITouches
- 4. 通過網絡發送sqlite數據庫
- 5. 是否可以通過網絡訪問Cacti RRD數據庫
- 6. 離線時是否可以通過gcm發送推送通知?
- 7. 是否可以通過smtp通過bash腳本發送郵件?
- 8. 通過網絡內的網絡發送數據
- 9. 是否可以通過WebSocket握手發送自定義數據?
- 10. 通過網絡發送更長的C字符數組
- 11. 壓縮布爾數組通過網絡發送
- 12. 是否可以通過網址向Google Analytics服務發送數據?
- 13. 網頁訪問數據是否可以通過USB發送到計算機
- 14. Java如何通過網絡通過UI按鈕發送數據
- 15. 是否可以通過網絡讀取mp4的特定部分?
- 16. 通過網絡發送按鍵
- 17. 通過網絡發送結構
- 18. 通過網絡發送屏幕截圖
- 19. 通過網絡發送密碼
- 20. 網絡 - 通過發送端口
- 21. 通過網絡發送對象向量
- 22. 通過網絡發送文件夾
- 23. 是否可以通過RDCOM發送可視化圖像?
- 24. 是否可以通過網絡上的應用程序(代碼)通過網絡啓動「關閉」系統?
- 25. 是否可以使用Retrofit通過Multipart發送String []?
- 26. 是否可以通過藍牙發送pygame鍵盤事件?
- 27. 是否可以通過WIFI在Android上發送短信?
- 28. 是否可以通過twilio發送包含html的短信?
- 29. 是否可以通過telnet發送LDAP「請求」?
- 30. 如何檢查電話是否可以通過手機發送?