作者go750626 (..........)
看板C_and_CPP
標題[問題] socket programming write,read問題
時間Wed Mar 16 20:02:21 2011
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
Linux
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
問題(Question):
最近嘗試寫一個socket小程式
server,client連線已經建立好 write,read char array也都讀得到
請問一下 write可以丟入int嗎?
今天測試一直不成功
類似這樣:
int *a;
*a = 100;
server:
write(newsockfd, a ,siezof(a));
client:
int *b;
read(sockfd,b,sizeof(b));
不知可行嗎? 哪邊有錯?
可以的話如果要讓server連丟3個整數 client可以分別存入3個變數要怎麼做?
就我所道一直丟的話 write的buffer會一直塞 那client要怎麼區別?
餵入的資料(Input):
預期的正確結果(Expected Output):
錯誤結果(Wrong Output):
程式碼(Code):(請善用置底文網頁, 記得排版)
補充說明(Supplement):
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.57.151.79
推 chchwy:何不說說你嘗試的結果? 錯誤訊息是什麼? 03/16 20:20
→ james732:int a = 100; write(newsockfd, (void *)&a ,siezof(a)); 03/16 20:21
→ james732:int b; read(sockfd,(void *)&b,sizeof(b)); 03/16 20:21
→ james732:你原本的程式碼犯了十三戒第三 03/16 20:21
→ loveme00835:...可能以為傳指標就只要隨便定義一個指標丟給它就好 03/16 22:27
→ loveme00835:了吧...傻眼 03/16 22:27