|
■No81449 (とっちゃん さん) に返信 > ■No81448 (PI さん) に返信 > >>・表示された文字列は「8��v�r�v」となっています。 >> ⇒表示させたい値は「2755」となるはずです。(ラズパイで計測した温度と湿度の数値を送っています) >> > > 送信側の > write(dstSocket, buf, 1024); > と、固定1024バイトで送信部分を > > write(dstSocket, buf, strlen(buf) ); > または > write(dstSocket, buf, strlen(buf)+1 ); > > と可変長にしてみてはいかがでしょうか? > > もし、固定長で送る必要があるなら、 > sprintf の前に memset( buf, 0, 1024 ); > > とするなど、データを0リセットしておくか(誤動作低減のため) > 終端文字コードが出て以降は処理しないような工夫(ループしているのでそれなりの工夫が必要です)をする必要があると思います。 >
とっちゃん さん ご回答有難うございます。 write(dstSocket, buf, strlen(buf)+1 );とすることで期待通りの表示をすることが可能となりました。
回答してくださった皆様有難うございます。
|