トップ «前の日記(11/08/2006) 最新 次の日記(11/10/2006)» 編集

本 日 の h o g e

hogeとはワイルドカードのようなものです。日々起こった、さまざまなこと −すなわちワイルドカード− を取り上げて日記を書く、という意味で名付けたのかというとそうでもありません。適当に決めたらこんな理由が浮かんできました。

更新情報の取得には rdflirs を使ってもらえると嬉しいです.


11/09/2006 んー [長年日記]

tDiary 1477日目

[日記] 飯日記

  • 12時頃:ナス肉定食
  • 23時頃:つけ麺,餃子

[日記] むう

何だか知らんが C を触らなければならないような衝動に駆られたのでどうでもいいコードを書いてリハビリした.

#include <stdio.h>
#include <errno.h>

#include <sys/types.h>
#include <sys/socket.h>
#include <arpa/inet.h>

int
main (int argc, char **argv)
{
  struct in_addr structure;
  char out[INET_ADDRSTRLEN];

  if ( argc <= 1 ) {
    fprintf(stderr, "usage: %s <inet4addr>\n", *argv);
    return 1;
  }

  for ( argv++; *argv != NULL; argv++ ) {

    if ( inet_pton(AF_INET, *argv, &structure) <= 0 ) {
      if ( errno )
        perror(*argv);
      else
        fprintf(stderr, "invalid address: %s\n", *argv);

      continue;
    }

    if ( ! inet_ntop(AF_INET, &structure, out, INET_ADDRSTRLEN) ) {
      if ( errno )
        perror(*argv);
      else
        fprintf(stderr, "invalid address: %s\n", *argv);

      continue;
    }

    printf("result:\n"\
           "  in:  %s\n"\
           "  out: %s\n", *argv, out);
  }

  return 0;
}

ちなみに実行結果.

bash$ gcc -Wall -Werror -g -o inet_test inet_test.c 
bash$ ./inet_test 192.168.0.195 192.168.0.057 192.168.0.0x12
result:
  in:  192.168.0.195
  out: 192.168.0.195
invalid address: 192.168.0.057
invalid address: 192.168.0.0x12

ん,inet_pton は 10 進表記以外を許さないのか.適当に直してくれるもんだと思ってた.

思い出した

inet_aton と間違えてた.

[Perl] Hello World!

絶句...

[Perl] In-Memory File

Perl でも Python で言うところの StringIO を使えるというイメージかな.