>>237
なんか長くなっちゃった・・・鬱

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define LINE_BUF_GROW_STEP 8
#define MAX_LINE 10240

char **hoge[MAX_LINE];

main() {
  char *line,*line_tmp;
  char *word;
  char **line_element_ptr;
  int lines = 0;
  int chars;
  int count;
  int line_buf_len = 2; /* 最低でも 2 は必要(man fgets) */
  int i,j;

  /* 行バッファ確保 */
  line = (char *)malloc(line_buf_len);
  line_tmp = (char *)malloc(line_buf_len);
  if (!line || !line_tmp) {
    puts("メモリ買えや・・・");
    exit(1);
  }

  /* 読み込むよぅ */
  while(fgets(line,line_buf_len,stdin)) {
    /* 継続読み込み */
    while(line[strlen(line)-1] != '\n' && !feof(stdin)) {
      /* 行バッファ伸ばす */
      line_buf_len += LINE_BUF_GROW_STEP;
      line = (char *)realloc(line,line_buf_len);
      line_tmp = (char *)realloc(line_tmp,line_buf_len);
      
      if (!line || !line_tmp) {
        puts("メモリねぇんだゴルァ・・・");
        exit(1);
      }

      /* 続きを読み込む */
      fgets(line+(line_buf_len - LINE_BUF_GROW_STEP -1),
         LINE_BUF_GROW_STEP+1,stdin);
    }