Dag-Erling Smørgrav wrote:
Dag-Erling Smørgrav <[EMAIL PROTECTED]> writes:
Purely in the interest of showing off, here is my version. It is 81
bytes shorter than yours, it is valid C99 with POSIX extensions (yours
is not), and it produces 11,450 files in about 0.2% of the time yours
takes to produce 10,000.
#include <unistd.h>
#define b(i,v) for(int v=48;v<127;++v){f[i]=v;
#define a(i) b(i,v##i)
int main(void){char f[5]={'/'};a(1)a(2)a(3)truncate(f,0);}}}}
Two bugs:
1) I forgot to include the correct version of the code
2) the version I had created a few files with '/' in their names; this
slightly nastier creates 10,648 files with only letters.
#include <unistd.h>
#define b(i,v)for(int v=65;v<87;){i[f]=v++;
#define a(i)b(i,v##i)
int main(void){char f[4]={47};a(1)a(2)a(3)truncate(f,0);}}}}
DES
This version also omits the constructive comments on the actual problem
that the original poster identified.
Scott
_______________________________________________
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "[EMAIL PROTECTED]"