C++和android進行socket通信小結

本人的C++和android水平都很soso,但是被導師趕鴨子上架,負責實現C++和android進行socket通信的問題,只能硬着頭皮研究了。

網上關於C++和android通信的問題研究的很少,最後只能是通過研究C++和java的通信在轉換成我所需要的了。

在網上找到了一段不錯的代碼:http://download.csdn.net/detail/nuptboyzhb/4595415

經過我的修改,成功的在安卓上實現,代碼如下:http://download.csdn.net/detail/yxg190221/6815691

其中的原理有一篇文章說的很好,可以直接去看:http://blog.csdn.net/jiangxinyu/article/details/8211612

簡單說一下我的理解,也不知道對錯。在這個代碼中穿上那個的所有數據都是先轉換成了字節數組之後再傳遞的,傳送結構的字節對齊問題文章中已經說得很詳細了,這裏就不再說了。

如果只傳送字符串的,也需要把要傳送過得字符串轉換成字節數組,而且字節數組的長度要大於字符串的長度,否則接收端就會有亂碼,因爲c++字符串是以'/0'作爲結束符的,如果找不到'/0'可能會出現一些亂碼,所以發送和接收的時候最好都分配一個length+1的字節。

c++字符串是以'/0'作爲結束符的,如果找不到'/0'可能會出現一些亂碼,所以接收的時候可以分配一個length+1buffer用來接收消息c++字符串是以'/0'作爲結束符的,如果找不到'/0'會出現一些亂碼,所以接收的時候可以分配一個length+1的字節

用來接收消息


發佈了22 篇原創文章 · 獲贊 3 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章