e17.c

無意味な記述!
/* statement has null effect	*/
/*###25 [cc] 警告: BBB:e17: 例 *cp++は(cp++)と同じで*は不要%%%*/

int     main()
{
        char	*	cp = "ABCD" ;
        int		i  ;
        /* (1)ポインタを前進させる。	 */
        /* (2)ポインタの実体を加算する */
        /* (3)ポインタを前進させる。そしてその実体を何もしない */
        /* (4)ポインタを前進させる。そしてその実体を何もしない */
        cp = "ABCD" ;   cp++ ;   /* (1) */
        cp = "ABCD" ; (*cp)++;   /* (2) */
        cp = "ABCD" ;  *cp++ ;   /* (3)<-LOOK */
        cp = "ABCD" ;  *(cp++) ; /* (4) */
        return(0) ;
}


解説 LOOK以下のcpを標準出力すると何が表示されるか即答出来た人は、 C言語のポインターを理解しています。 『* と ++ の結合力は同位ですが、右から左へ評価されます。』 と言う事は誰も暗記していないので、 カッコを付ける習慣を付けましょう。 詳細な説明は、 プログラミング言語C 第2版 ANSI規格準拠 カーニハン リッチー著/石田晴久訳』 「5.1 ポインタとアドレス」Page115 C-FAQ 4.3J C-FAQ 4.3E を参照して下さい。
『*cp++』の記述はポインタを理解していない証拠!!