cygwinというかwindowsではアスタリスクをファイル名に出来ない?

$ echo -e '#include <stdio.h>\nint main(){FILE *f;f=fopen("./a.txt","w");fprintf(f,"hello,world");}'> a.c;gcc a.c ; ./a.exe
$ cat a.txt 
$ echo -e '#include <stdio.h>\nint main(){FILE *f;f=fopen("./*","w");fprintf(f,"hello,world");}'> a.c;gcc a.c ; ./a.exe
Segmentation fault (core dumped)
$ ls
a.c  a.exe*  a.exe.stackdump  a.txt

同様のプログラムでunixではアスタリスクでファイル名が作れるのだがwindowsでは無理なんだろうか。