我试图了解指针递增和取消引用是如何结合在一起的,我这样做是为了尝试一下:
#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)
- 取消引用指针 + 1(打印 word2)
但是编译器甚至不会编译它,并给出这个错误:lvalue required as increment operand
我在这里做错了吗?