Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sun-barr!apple!agate!dog.ee.lbl.gov!nosc!manta!mitch From: mitch@manta.NOSC.MIL (Ray Mitchell) Newsgroups: comp.lang.c Subject: Terminology Keywords: expression definition Message-ID: <1917@manta.NOSC.MIL> Date: 15 Apr 91 15:41:58 GMT Organization: Naval Ocean Systems Center, San Diego Lines: 16 Here's a question to reflect my misunderstanding of some basic terminology. Upon looking for a concise, English definition of the term "expression" in a multitiude of C texts, the best I can come up with is: "Any combination of constants, variables, and operators (producing a value)" I put "producing a value" in parentheses because therein lies my problem. It seems intuitively clear that an expression must have a value and it follows that a function returning a value qualifies as an expression. However, how about a function returning "void" or an expression cast to type "void"? Are these two cases no longer considered to be expressions or is "void" considered to be a value for the sake of the definition of an expression? Ray Mitchell