C

fopenとか、似非OOスタイルとか

C

試してみた。 #include <stdio.h> #include <stdlib.h> #include <assert.h> #include <string.h> typedef struct fc { int length; int line_count; int byte; char *filename; char **lineList; } FileClass; char *getLine(FileClass *fp) { return *(fp->lineList + ((fp->line_count)++)); } in</string.h></assert.h></stdlib.h></stdio.h>…

ポインタ理解の為の習作

C

#include <stdio.h> #include <stdlib.h> #include <string.h> typedef struct namelist { char *word; struct namelist *next; struct namelist *prev; } namelist; namelist *get_list(namelist *(*set_list)(char **, int)) { int i; char **str_store, tmp_str[64]; str_store = (char</string.h></stdlib.h></stdio.h>…

あれこれ弄ってみて

C

どうも、文字列(文字配列)あたりであれこれと勘違いしてることに気づく。おかげで、今思えばアホのような疑問が晴れる。Cはそこまで嫌いではないが、こういう(特に文字列関連の)中途半端な仕様はあまり好きじゃない。尤も、文字列関連はCの得意分野では…

関数ポインタとかビット演算とか

C

少しだけ触ってみた。 なんか、Cっていう言語の中で一番面白いところかも。スクリプト言語並みの高級な処理を夢見て一生懸命そっちの方をやるより、こういう泥臭いのをやる方がずっとこの言語らしくも思えるし。 以下、関数ポインタのサンプル。 #include <stdio.h> #</stdio.h>…