我想了解指針遞增和提領走在一起,我也該嘗試一下:指針增量和間接引用(左值所需錯誤)
#include <stdio.h>
int main(int argc, char *argv[])
{
char *words[] = {"word1","word2"};
printf("%p\n",words);
printf("%s\n",*words++);
printf("%p\n",words);
return 0;
}
我希望這個代碼做這些中的一個:
- 首先解除引用然後增加指針(印刷WORD1)
- 首先解除引用然後增加值(印刷ord1)
- 解除引用PO間+ 1(打印單詞2)
但是編譯器甚至不會編譯這一點,並給出了此錯誤:lvalue required as increment operand
我在這裏幹什麼什麼了嗎?
我想的char *字[]和char **的話是一回事。 – yasar 2012-04-14 02:24:31
@ yasar11732不,他們是不同的類型。該'字符*字[]'*衰減*爲'字符**如果你把它傳遞給一個函數,否則它們是不同的words'。 – dasblinkenlight 2012-04-14 02:28:11