Re: Why multiplication not allowed?
From: Keith Thompson (kst-u_at_mib.org)
Date: 01/07/04
- Next message: Christopher Benson-Manica: "Re: [OT] Re: Why multiplication not allowed?"
- Previous message: Keith Thompson: "Re: [OT] Re: Why multiplication not allowed?"
- In reply to: Joona I Palaste: "Re: Why multiplication not allowed?"
- Next in thread: Kevin Goodsell: "Re: Why multiplication not allowed?"
- Reply: Kevin Goodsell: "Re: Why multiplication not allowed?"
- Reply: Sean Kenwrick: "Re: Why multiplication not allowed?"
- Reply: Peter Pichler: "Re: Why multiplication not allowed?"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Wed, 07 Jan 2004 21:39:10 GMT
Joona I Palaste <palaste@cc.helsinki.fi> writes:
> Sean Kenwrick <skenwrick@hotmail.com> scribbled the following:
> > But I think the reason I didn't get the job was because one of the other
> > questions the interviewer asked me was to tell him what was wrong with the
> > following statement:
>
> > i=+i;
>
> > I said that there was nothing wrong with it, but the interviewer claimed
> > that it was an ambiguous statement because it could mean adding i to itselt
> > or setting i to +i. I got into an argument with him saying that he must
> > be confused with i+=i; but he was adament he was right and got annoyed that
> > I was disagreeing wih him.
>
> > Afterwards I wondered whether this might have been some kind of syntax left
> > over from a very early incarnation of C which was subsequently dropped.
> > Perhaps the members of this group could enlighten me about this since I
> > think that this guy was just a complete idiot.
>
> Yes, this is an obsolete feature of C. =+ and =- originally meant the
> same as += and -=. Whoever designed them that way must have been
> drinking something really strong. AFAIK they were dropped when ISO
> standardised C.
> That the interviewer still clung to the obsolete meanings of those
> operators makes me feel that he wasn't the proper person to interview
> you about C.
The =+ syntax was dropped long before ISO C; it had vanished by the
time K&R1 was published.
Not many years ago, I used a compiler (VAXC, I think) that allowed the
old =+ syntax, but I think it at least issued a warning about it. (It
also helpfully "corrected" the unrecognized "signed" keyword to
"unsigned".) The oldest C compiler I now have access to (circa 1988)
just treats =+ as a syntax error.
What's really wrong with the statement is that it lacks whitespace and
doesn't do anything useful.
-- Keith Thompson (The_Other_Keith) kst-u@mib.org <http://www.ghoti.net/~kst> San Diego Supercomputer Center <*> <http://www.sdsc.edu/~kst> Schroedinger does Shakespeare: "To be *and* not to be"
- Next message: Christopher Benson-Manica: "Re: [OT] Re: Why multiplication not allowed?"
- Previous message: Keith Thompson: "Re: [OT] Re: Why multiplication not allowed?"
- In reply to: Joona I Palaste: "Re: Why multiplication not allowed?"
- Next in thread: Kevin Goodsell: "Re: Why multiplication not allowed?"
- Reply: Kevin Goodsell: "Re: Why multiplication not allowed?"
- Reply: Sean Kenwrick: "Re: Why multiplication not allowed?"
- Reply: Peter Pichler: "Re: Why multiplication not allowed?"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|