Because a should be an array of pointers, not an array of arrays.
Code:
char *a[] = { "sample.sh", "one", "two", "three", NULL };