All pastes #292497 Raw Edit

Someone

public text v1 · immutable
#292497 ·published 2006-12-26 16:29 UTC
rendered paste body
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main() {
  char *data;
  char *start;
  size_t malloclen = 8;

  int postz = 'z'+1;
  int prea = 'a'-1;

  data = malloc(malloclen);
  *data = 0;
  *(data+1) = 0;
  size_t datalen = 1;

  while (1) {
    if (datalen > malloclen - 1) {
      char *newdata = data;
      malloclen*=2;
      newdata = malloc(malloclen);
      memset(newdata, 0, malloclen);
      memcpy(newdata, data, strlen(data));
      data = newdata;
    }

    start = data;
    while (1) {
      if ( *start == 0 ) {
        *start='a';
        datalen++;
        goto wrapup;
      }
      (*start)++;

      if ( *start == postz)
        *(start++) = 'a';
      else
        break;
    }
wrapup:
    printf("%s\n", data);
  }
}