什么都不要看,只要看q的定义。q的定义语句是:char * q; (当然了,用p初始化了q,不过这不重要)也就是说,q是一个指针,一个指针占用多少个字节?指针存放的也就是内存地址,在32位系统下,内存地址是32位的,也就是4个字节。所以32位系统下,指针始终占用4个字节。所以以上结果为4
q是指针,占据4个字节,sizeof(q)返回的是q的大小,不是(*q)的大小,所以是4.