センス・オブ・プログラミング!?抽象的に考えること・データ構造を理解すること

センス・オブ・プログラミング! 抽象的に考えること・データ構造を理解すること

センス・オブ・プログラミング! 抽象的に考えること・データ構造を理解すること

確かにプログラミングにセンスは重要。センスよりも根気の方が重要かもとも思う今日この頃。
本に書かれてあることは、自分がいつも思っていることとも近いものが多かったけれど、そうかなと思うものもあったり。美は主観的なものだから、いろいろな考え方があるのだな。
本の中に、

typedef struct Person_tag {
    char     name[NAME_LEN_MAX];
    struct Person_tag *next;
} Person;

みたいな連結リストに要素を追加するC言語のコードが、

 Person  *pos;

 p->next = NULL;

 if (header == NULL) {
     header = p;
 } else {
     for (pos = header; pos->next != NULL; pos = pos->next)
         ;

     pos->next = p;
 }

てな具合に書いてあるけど、こんな時に自分の場合はポインタへのポインタを使って、

 Person  **ppos;

 p->next = NULL;

 for (ppos = &header; *ppos != NULL; ppos = &((*ppos)->next)
     ;

 *ppos = p;

てな感じに書くところだ。