5.1 我想聲明一個指針並為它分配一些空間, 但卻不行。這些代碼有什麼問題?
char *p; *p = malloc(10);
你所聲明的指針是 p, 而不是 *p, 當你操作指針本身時 (例如當你對其
賦值, 使之指向別處時), 你只需要使用指針的名字即可:
p = malloc(10);
當你操作指針指向的內存時, 你才需要使用 * 作為間接操作符:
*p = 'H';
參見問題 1.7, 7.1, 7.5 和 8.3。
參考資料: [CT&P, Sec. 3.1 p. 28]。
翻譯朱群英、孫雲, LaTeX2HTML 編譯 朱群英 (2005-06-23)