e=(Elem *)malloc(10*sizeof(Elem));
----------------------------------------------------
这一句动态分配了10个Elem大小的连续空间,e指向这片空间的首地址。
e[i]等价于:*(e+i)
即:第i个Elem对象(i是不能大于9的正整数)。
sizeof(Elem)???
e[i]表示:以分配的内存地址为起始地址,第i+1个Elem类型“内存块”。i不一定是正整数,但一定是整数。
e[i]此时不是指针,而是表示一个Elem类似的数据块。
算是指针 不过是指针用了像数组一样的下标表现形式