質問: buf; send(sock, e,sizeof(e), 0); printf(buf); } ``` ポインタに格納することで、かなりよくなりました。 ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/3f7232946577aea3dd6d90a20d1729cb.png) 全角文字のほうはやはり文字コードの問題のようです・・・。
回答: 再回答になります。 Cのソースを send(sock, buf, sizeof(buf), 0);を send(sock, buf, strlen(buf), 0); にしてください。 rubyのソースを 1行目に ``` # coding:WINDOWS-31J ``` を追加し whileのループを以下のようにしてください。 ``` while cmd = sock.gets#1行ずつコマンド実行結果を受け取る。 cmd.force_encoding("WINDOWS-31J") puts cmd #putsで表示させる。 end ``` これで、dirコマンドを実行したとき、正しく表示されることをこちらでは確認しました。