バレンタインなんて・・・(´∀`*)

後期期末試験がついに終わりました。今日は現代社会論と専門教科の電気回路だったので調子こいて、涼風を18巻全話読みきりました。たった1日で。
涼風(1) (少年マガジンコミックス)
んー面白かった^q^ 主人公がマジリア充すぎてやばかった テスト勉強しなきゃという危機感よりも続きがきになるという不祥事が起きた。君のいる町も読みたいなー。もう最近、漫画とかアニメとかほとんど見てなかったからもう暴走したい、うん

高専2年生で自分がうける定期試験は全て終わり、気がついたらもう少しで3年生。3年といったら、高校でいう最後の一年間。17,18歳って言ったら、やっぱりそれぞれの分岐点だし。今日も選択教科のクラス分けの希望調査あった。一番致死率の高い化学特論を前期も後期も取ってしまった。第一希望で。だって、進学に有利というおはなしだったし。あ、将来、希望としては大学に編入したいとかんがえていまつ。
ほんと、1日1日が惜しい。時間止めてー。

今日は電車の中で、TCP/IPの通信プログラムのサーバー側を改造してた。前のバージョンは、残念ながら1つずつ接続要求を受け取って切断して、次の接続要求をうけてー・・・ってやってたけど、それを並列処理化した。つまり、同時多数のクライント処理が可能になった。なんか不安なのが、タイミングの悪い時に切断してしまうと、受信ルーチンが暴走しはじめる。接続を常にチェックできるような関数ないかな。クライアント側のIPをサーバーで表示しようと思って、頑張ってたんだけど、inet_ntoa関数がかなり不機嫌みたい。

warning: format ‘%s’ expects type ‘char *’, but argument 2 has type ‘int’

って、gccに怒られるんだけど、他のサイトを見る限り、この関数は成形されたIPアドレスの格納された文字配列の先頭アドレスが帰ってくはず。なのに、int型で帰ってくる。%dだと、わけのわからん数値が帰ってくる。多分、メモリ上のアドレスを指し示しているのかなと思って、char *型で無理やりキャスト変換して表示しようとおもったら、セグメンテーション違反発生。どういう事だろう。サーバー側からクライアントのIPが取得できないとかなりクリティカルにヤバい。今後、こいつでP2Pネットワークを構築していくわけだけどハイブリッド側のP2Pを考えてて、それの名前解決用サーバーとしての使用を将来的な構想として考えているんだけど、名前解決できねーじゃん。

解決法あった

#include

をインクルードしたら直りました。ちゃんとコンパイル通るようになって、正常動作も確認しました。

まぁ例の暴走するバグとがなんとか収拾つけば、あとはプロトコルの実装に移行するだけ。
そういえば、具体的にプロトコルとか全然考えてなかった←