pointer increment and dereference (lvalue required error)
I am trying to understand how pointer incrementing and dereferencing go together, and I did this to try it out: #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; } I expected this code to do one of these: First dereference then increase the pointer (printing word1) First dereference then increase the value (printing ord1) Dereference pointer + 1 (printing word2) But compiler won't even compile this, and gives this error: lvalue required as increment operand am I doing something