Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 28 Feb 2005 21:23:22 -0800 (PST)
From:      Mark Jayson Alvarez <jay2xra@yahoo.com>
To:        freebsd-questions@freebsd.org
Subject:   Word counting by Kernighan won't compile =(
Message-ID:  <20050301052323.29837.qmail@web51610.mail.yahoo.com>

next in thread | raw e-mail | index | archive | help
Hi,
  Sorry for asking this question here. I just thought
that this might be a platform specific issue=). I'm
reading this book(The C Programming Language 2nd
Edition by Brian W. Kernighan. Upon reading the book,
I came up with this example code. It says, it will
count the number of words, lines and characters in the
command line, until I send an EOF signal. I copied it
verbatim and tried compiling it with plain "cc
myprog.c" 

It exited with errors:

word.c: In function `main':
word.c:17: error: invalid lvalue in assignment

Any idea what this means?

Thanks.



Here's the code:
#include<stdio.h>

#define IN      1
#define OUT     0

main()
{
   int c, nl, nw, nc, state;

   state = OUT;
   nl = nw = nc = 0;
while ((c = getchar()) != EOF) {

  ++nc;
  if (c == '\n')
    ++nl;
  if (c == ' ' || c == '\n' || c = '\t')
    state = OUT;
  else if (state == OUT) {
     state = IN;
     ++nw;
  }

}
 printf("%d %d %d\n", nl, nw, nc);
}




		
__________________________________ 
Do you Yahoo!? 
Yahoo! Mail - 250MB free storage. Do more. Manage less. 
http://info.mail.yahoo.com/mail_250



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050301052323.29837.qmail>