29、设已有定义: char *st="how are you"; 下列程序段中正确的是( )
A、 char a[11], *p; strcpy(p=a+1,st[4]);
B、 char a[11]; strcpy(++a, st);
C、 char a[11]; strcpy(a, st);
D、 char a[], *p; strcpy(p=&a[1],st+2);
A中,st[4]是char不是指针,错误,需要改成st+4
B中,不正确,a是首地址指针,指针本身不可以++
C中,正确
D中,a是空数组,没有内存,会导致异常错误