学校の実験で講義が1時間だけあってレポートを出されるというひどい実験があった。
内容はネットワークプログラミングでHTTPクライアントを作成しろなどなど。
ネットで参考になりそうなページがたくさんあったのでとりあえずリンクしておこう。

ネットワークプログラミングの基礎知識
http://x68000.q-e-d.net/~68user/net/

ネットワークプログラミング
http://www.fc-lab.com/network/program/

ASH
http://www.ash.or.jp/net/prog_net.htm

琉球大学
http://www.ie.u-ryukyu.ac.jp/~kono/lecture/2001/os/ex/tcp/network.html
 学校の宿題でC言語標準装備のクイックソートを作れというのがあった。
 仕様は void my_qsort(void *base, size_t num, size_t width, int (*compare)(char*,char*))であるがvoid型のポインタの処理が結構難しかった。

 スワップ関数

void my_swap(void *base, int x, int y, size_t width){
  char *temp = (char*)malloc(width);
  memcpy(temp,base+x*width,width);
  memcpy(base+x*width,base+y*width,width);
  memcpy(base+y*width,temp,width);
  free(temp);
}

 left番目からright番目までrightを基準値にして大小を分割する関数

int partition(void *base, size_t width, int left, int right, int (*compare)(char*, char*)){
  int i,j;
  i = left - 1;
  j = right;
  char *pivot = (char*)(base+right*width);
  while(1){
    while((*compare)((char*)(base+(++i)*width),pivot) < 0)
    ;
    while(i < j-- && (*compare)(pivot,(char*)(base+j*width)) < 0)
    ;
    if(i >= j)
      break;
    my_swap(base,i,j,width);
  }
  my_swap(base,i,right,width);
  return i;
}

クイックソート本体

void my_qsort(void *base, size_t num, size_t width, int (*compare)(char*, char*)){
  int right,left,mid,sp;
  int low[STACK_SIZE], high[STACK_SIZE];
  low[0] = 0;
  high[0] = num - 1;
  sp = 1;
  while(sp > 0){
    sp--;
    left = low[sp];
    right = high[sp];
    if(left > right)
    ;
    else{
      mid = partition(base,width,left,right,compare);
      if(mid - left < right - mid){
        low[sp] = mid +1;
        high[sp++] = right;
        low[sp] = left;
        high[sp++] = mid - 1;
      } else{
        low[sp] = left;
        high[sp++] = mid - 1;
        low[sp] = mid + 1;
        high[sp++] = right;
      }
    }
  }
}
友人のO氏が車をカローラに買い換えたため遠出を決意!
一路鹿児島を目指すことになった。
4日木曜の実験終了後すぐに福岡を発つ。PM18:00
渋滞に巻き込まれなかなか進まない。八女のトライアルを目指すもその姿はなく・・・ PM20:00
結局トライアルは見つからないままJoyfull八女店?へと到着。唐揚げ定食大盛りで~ PM20:30
ドライバーをS氏に交代後一路南へ!下道を進む。
しばらくして熊本入り。「鹿児島200km」看板を見てへこむ・・・ PM22:00
日付が変わろうとしているときのことだ。ガソリンがヤバイ!ランプついてる~
まあ3号線だからスタンドあるでしょ・・・と思ってたら意外とない!
水俣市入ったけど全くないよ~てか全部しまってる。田舎ですなぁ・・・
何とか水俣市入ってしばらくしてセルフスタンドを発見し滑り込みセーフ!!
次のドライバーは私です。ドキドキ。AM0:00過ぎ
しばらく進むと速度違反取り締まり機設置路線看板発見!
減速してしばらく進むとありました。やつが。看板出す意味ないよね・・・
とりあえずそうこうしているうちに鹿児島着いちゃいました。さてどこ行く??
とりあえず・・・鹿児島大学!?

↑行っちゃいましたね。証拠写真です。AM3:00
その後、城山、大久保利通像、西郷隆盛像、東郷平八郎墓などをまわる。
それにしても、ザビエル公園って・・・
その後城山駐車場で一時睡眠・・・AM5:00
さて、朝を迎えました!城山展望台からの桜島の眺めは・・・イマイチですな。曇ってるよ・・・
しかもラジオの音とともにご老人たちがたかっています・・・
即座に場所変更!フェリー乗ろうぜ~AM6:30
桜島フェリーに乗り桜島へ!上陸することに意義がある。
それにしてもやけに女子高生いっぱい乗ってるな・・・どうやら桜島でテニスの試合みたいです。
わざわざ大変だな。上陸後特に何もすることないのでそのまま本島へ・・・AM8:00
さて、次は風呂でも入りに行こう!温泉だ!目指すは伊敷の「たぬき温泉」
マッタリつかったあと市内へ戻りおみやげを買うことに。鹿児島中央駅へ向かう。AM10:00
地下でお買い物~ 焼酎を買っていると「S良」発見!これは友人のS良君に買っていくしかない!
その他Aさんへのお土産も買い、いよいよ福岡へ戻ります!AM11:00
高速をぶっ飛ばすこと3時間、ようやく福岡へ到着~ 総計20時間の旅。
さすが大学生ですね。鹿児島に日帰りで行こうという発想が。しかもムーミンだよ。
帰ったらバイトあるのに・・・ まあとりあえずお疲れ~ PM14:00
11/3にサークルの合宿メンバー+二人でどんぐり村へピクニックに行った。
弁当は我々3年生が作っていかなければいけなくて、自分は混ぜご飯?と唐揚げ担当だった。
どんぐり村へ向かう途中微妙に小雨が・・・
でも到着する頃には上がって青空も見えていた。
まずはアーチェリーだ!車ごとに分かれて対決!うちの車は3チーム中2位とまあ普通。
その後弁当を食べる。班長のK氏の野菜炒めに驚かされる。
弁当を食べているとき雨が降ってきた!マジ寒い!((((;゚Д゚)))ブルブル
でもすぐに上がって風も収まった。次はローラー滑り台だ!
上まで登るのがきついです・・・年です。ケツが熱いです。
その後動物広場へ行き、最後にシュークリームを食べました。おいしかった!
帰り道で寄り道して温泉につかることに。疲れを癒して福岡に帰りました。
10月31日に大分県で行われたGT選手権に行って参りました。
オートポリスは上津江村という辺境の地にあります。
行きは八女まで南下して東に向かったけど、普通に日田方面から南下した方が近いです!
3時間もかかった・・・片道150㌔くらいですね。
でも、初めて生でレースを見たけどあんなに凄いエンジン音がするとは思わなかった。
また機会があったら行きたいですね~