As has been pointed out "a/*b" is different from "a/(*b)" and "a / *b". The C language standard states fairly clearly that lexical tokens are disambiguated by the longest possible parse. Hope this clarifies the problem. By this rule "a+++b" means "(a++) + b". Martin Minow decvax!minow