Hi, This is a general FreeBSD source related question, and I am posting it here, as it did not fit in any other FreeBSD lists...
While browsing through sources for different userland utilities (cat, chmod, and so on), I noticed that in main(), first getopt() is called in a while loop, and then the check for the number of arguments passed is done. Something like this (from chmod.c): int main(int argc, char *argv[]) { ... while ((ch = getopt(argc, argv, "HLPRXfghorstuvwx")) != -1) ... if (argc < 2) usage(); ... } Can't we check for the number of arguments *before* calling getopt()? Something like: int main(int argc, char *argv[]) { ... if (argc < 2) usage(); ... while ((ch = getopt(argc, argv, "HLPRXfghorstuvwx")) != -1) ... } This might make it a bit more efficient, though I don't have numbers' to prove this. I observe a similar pattern in other utilities too - which might mean that there was a sound reason as to why it was done this way. Can someone be kind enough to explain this? Thanks in advance! Best, Amarendra _______________________________________________ freebsd-questions@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-questions To unsubscribe, send any mail to "[EMAIL PROTECTED]"