Hi, > size_t nc = 0, nl = 0, nw = 0; > > while ((rlen = efgetrune(&c, fp, str))) { > - nc += (cmode == 'c') ? rlen : > + nc += (cmode == 'c' || cmode == 0) ? rlen : > (c != Runeerror) ? 1 : 0; > if (c == '\n') > nl++;
a '?' inside of other '?' is not a good idea. I think the expression is complex enough to require an if-else. Regards,