Hi all, Been reading the book, ' The C Programming Language ' by Brian W. Kernighan and Dennis M. Ritchie Chapter 5, Section 5.10 Command Line Arguments There is a line of code at that section - while ( --argc > 0 && ( *++argv ) [0] == '-' ) while ( c= *++argv [0] ) switch (c) {.......} I do not understand the portion c = *++argv[0]. From what i understand, the 'result' of that incrementing and dereferencing will be c = argv[0][1], which is wrong. Shouldn't the line be replaced with c = *++argv[1] ? FYI, argv[0] = pointer to array of char "find" argv[1] = pointer to array of char "-nx" argv[2] = pointer to array of char "pattern" The online edition of the K&R are as below - http://www.trunix.org/programlama/c/CProgrammingLanguage/chapter5.html#s5.10 I have checked the typo report for this second edition but found that this was not mention, so i guess, it must be my wrong interpretation. Anyway, pls enlighten. Thanks. Pang -- http://www.piclist.com hint: The list server can filter out subtopics (like ads or off topics) for you. See http://www.piclist.com/#topics