すいません
#include <stdio.h>
void strout(char a[]);

main(){
strout("ABCabc123");
}

void strout(char a[]){
int i;
i=0;
while(a[i]){
a[i]=toupper(a[i]);
putchar(a[i]);
++i;
}
putchar('\n');
}
するとcore dumpするんですけど、なぜですか?
コンパイラはCygwinのgccです。