473,395 Members | 1,532 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,395 software developers and data experts.

Yes/No

Are the two statements same:
a<=20?b=30:c=30;
(a<=20)?b=30:c=30;

Nov 15 '05 #1
17 1585
Meenu wrote:
Are the two statements same:
a<=20?b=30:c=30;
(a<=20)?b=30:c=30;


Google "C++ operator precedence"
(yes, unless you have some funny #define going round)

--
imalone
Nov 15 '05 #2


Ian Malone wrote:
Meenu wrote:
Are the two statements same:
a<=20?b=30:c=30;
(a<=20)?b=30:c=30;


Google "C++ operator precedence"
(yes, unless you have some funny #define going round)

--
imalone


Even I thought so, but the answer mentioned is no, and I can't figure
out a reason

Nov 15 '05 #3
Ian Malone wrote:

Google "C++ operator precedence"


Oops, wrong ng. Obviously that says 'c operator precedence'

--
imalone
Nov 15 '05 #4


Ian Malone wrote:
Ian Malone wrote:

Google "C++ operator precedence"


Oops, wrong ng. Obviously that says 'c operator precedence'

--
imalone


I didn't get it...:(
pls elaborate

Nov 15 '05 #5
Meenu wrote:

Ian Malone wrote:
Ian Malone wrote:

Google "C++ operator precedence"

Oops, wrong ng. Obviously that says 'c operator precedence'


I didn't get it...:(
pls elaborate


Thought I was reading comp.lang.c++, not comp.lang.c.

Incidentally, since the ternary operator is meant to
return a value, the assignments need to be parenthesised,
since they have a lower priority (they are statements to
be evaluated). You need
a<=20?(b=30):(c=30);

--
imalone
Nov 15 '05 #6
On Fri, 22 Jul 2005 03:39:33 -0700, Meenu wrote:
Are the two statements same:
a<=20?b=30:c=30;
(a<=20)?b=30:c=30;


How's the homework going? Obviously not very well if you still haven't
grasped basic operator precedence. May I suggest reading a book or
actually attending class?

Nov 15 '05 #7


Simon Morgan wrote:
On Fri, 22 Jul 2005 03:39:33 -0700, Meenu wrote:
Are the two statements same:
a<=20?b=30:c=30;
(a<=20)?b=30:c=30;


How's the homework going? Obviously not very well if you still haven't
grasped basic operator precedence. May I suggest reading a book or
actually attending class?


Well thanks,
my confusion was that since parentheses only make the condition part
easier to see, other than that, i don't feel there would be any change
in the output.

Nov 15 '05 #8
In article <11**********************@g14g2000cwa.googlegroups .com> "Meenu" <me******@yahoo.com> writes:
Are the two statements same:
a<=20?b=30:c=30;
(a<=20)?b=30:c=30;


The same in what way? Both should give an error message from the compiler.
--
dik t. winter, cwi, kruislaan 413, 1098 sj amsterdam, nederland, +31205924131
home: bovenover 215, 1025 jn amsterdam, nederland; http://www.cwi.nl/~dik/
Nov 15 '05 #9
Meenu wrote:

Are the two statements same:
a<=20?b=30:c=30;
(a<=20)?b=30:c=30;


I wouldn't even bother to read them. They are infested with blank
elidation.

--
Chuck F (cb********@yahoo.com) (cb********@worldnet.att.net)
Available for consulting/temporary embedded and systems.
<http://cbfalconer.home.att.net> USE worldnet address!
Nov 15 '05 #10
Ian Malone <ib***@cam.ac.uk> wrote:

Incidentally, since the ternary operator is meant to
return a value, the assignments need to be parenthesised,
since they have a lower priority (they are statements to
be evaluated). You need
a<=20?(b=30):(c=30);


The ? and : act like parentheses, so you only need to parenthesize the
final assignment:

a <= 20 ? b = 30 : (c = 30);

-Larry Jones

Mom must've put my cape in the wrong drawer. -- Calvin
Nov 15 '05 #11
CBFalconer wrote:
Meenu wrote:
Are the two statements same:
a<=20?b=30:c=30;
(a<=20)?b=30:c=30;

I wouldn't even bother to read them. They are infested with blank
elidation.


The word you seek is "elision." As in "The Elision Fields,"
where one forgets one's past lives -- Egad! I'm turning Buddhist.

(Interesting thought: How can something be "infested with"
an absence? Maybe I'd understand better if I were infested
with an absinthe ...)

--
Eric Sosman
es*****@acm-dot-org.invalid

Nov 15 '05 #12
Eric Sosman wrote:
CBFalconer wrote:
Meenu wrote:
Are the two statements same:
a<=20?b=30:c=30;
(a<=20)?b=30:c=30;


I wouldn't even bother to read them. They are infested with blank
elidation.


The word you seek is "elision." As in "The Elision Fields,"
where one forgets one's past lives -- Egad! I'm turning Buddhist.

(Interesting thought: How can something be "infested with"
an absence? Maybe I'd understand better if I were infested
with an absinthe ...)


Yeah, it didn't look right. Would you settle for Pernod?

--
Chuck F (cb********@yahoo.com) (cb********@worldnet.att.net)
Available for consulting/temporary embedded and systems.
<http://cbfalconer.home.att.net> USE worldnet address!
Nov 15 '05 #13


Meenu wrote:
Are the two statements same:
a<=20?b=30:c=30;
(a<=20)?b=30:c=30;


No. In fact both will generate compilation error.
Since precedence of conditional operator is higher than
assignement operator, the following statement
a<=20?b=30:c=30; will be interpreted like

(a<=20?b=30:c)=30;
LHS is not an lvalue, so the error.
Same is the reason for second statement.
Now, if you enclose "c=30" in parenthesis, it would
be interpreted as:
(a<=20?b=30:(c=30)); which would complile OK.

Nov 15 '05 #14
ju**********@yahoo.co.in writes:
Meenu wrote:
Are the two statements same:
a<=20?b=30:c=30;
(a<=20)?b=30:c=30;


No. In fact both will generate compilation error.


Doesn't that make them equivalent?

--
Keith Thompson (The_Other_Keith) ks***@mib.org <http://www.ghoti.net/~kst>
San Diego Supercomputer Center <*> <http://users.sdsc.edu/~kst>
We must do something. This is something. Therefore, we must do this.
Nov 15 '05 #15
On Fri, 22 Jul 2005 21:39:12 -0400, Eric Sosman
<es*****@acm-dot-org.invalid> wrote:
CBFalconer wrote:
Meenu wrote:
Are the two statements same:
a<=20?b=30:c=30;
(a<=20)?b=30:c=30;
I wouldn't even bother to read them. They are infested with blank
elidation.


The word you seek is "elision." As in "The Elision Fields,"
where one forgets one's past lives -- Egad! I'm turning Buddhist.


elide: omit by elision [Concise OED]. And it was the Elysian Fields,
which were Greek ("The Isles of the Blest"); the Romans later moved
them into the underworld for the Grateful Dead (er, I mean the righteous
dead <g>).

Not to be confused with Harlan Ellison...
(Interesting thought: How can something be "infested with"
an absence? Maybe I'd understand better if I were infested
with an absinthe ...)


Absinthe makes the font grow harder...

(But being infested with an absence of blanks is an interesting idea. I
knew exactly what he meant, but the mental image is fascinating.
Probably worth a thesis for a doctorate in philosophy...)

Chris C
Nov 15 '05 #16
Chris Croughton wrote:
On Fri, 22 Jul 2005 21:39:12 -0400, Eric Sosman
<es*****@acm-dot-org.invalid> wrote:

CBFalconer wrote:

Meenu wrote:
Are the two statements same:
a<=20?b=30:c=30;
(a<=20)?b=30:c=30;

I wouldn't even bother to read them. They are infested with blank
elidation.


The word you seek is "elision." As in "The Elision Fields,"
where one forgets one's past lives -- Egad! I'm turning Buddhist.

elide: omit by elision [Concise OED]. And it was the Elysian Fields,
which were Greek ("The Isles of the Blest"); the Romans later moved
them into the underworld for the Grateful Dead (er, I mean the righteous
dead <g>).


pun: the humorous use of a word in such a way as to suggest
different meanings or applications or of words having the same
or nearly the same sound but different meanings [Webster's
Seventh New Collegiate Dictionary]

elide: e told a taradiddle, e did!

--
Eric Sosman
es*****@acm-dot-org.invalid
Nov 15 '05 #17


Keith Thompson wrote:
ju**********@yahoo.co.in writes:
Meenu wrote:
Are the two statements same:
a<=20?b=30:c=30;
(a<=20)?b=30:c=30;


No. In fact both will generate compilation error.


Doesn't that make them equivalent?


I am sorry. Yes, they are both equivalent, but both will give
compilation
error.

Nov 15 '05 #18

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

3
by: William C. White | last post by:
Does anyone know of a way to use PHP /w Authorize.net AIM without using cURL? Our website is hosted on a shared drive and the webhost company doesn't installed additional software (such as cURL)...
2
by: Albert Ahtenberg | last post by:
Hello, I don't know if it is only me but I was sure that header("Location:url") redirects the browser instantly to URL, or at least stops the execution of the code. But appearantely it continues...
3
by: James | last post by:
Hi, I have a form with 2 fields. 'A' 'B' The user completes one of the fields and the form is submitted. On the results page I want to run a query, but this will change subject to which...
0
by: Ollivier Robert | last post by:
Hello, I'm trying to link PHP with Oracle 9.2.0/OCI8 with gcc 3.2.3 on a Solaris9 system. The link succeeds but everytime I try to run php, I get a SEGV from inside the libcnltsh.so library. ...
1
by: Richard Galli | last post by:
I want viewers to compare state laws on a single subject. Imagine a three-column table with a drop-down box on the top. A viewer selects a state from the list, and that state's text fills the...
4
by: Albert Ahtenberg | last post by:
Hello, I have two questions. 1. When the user presses the back button and returns to a form he filled the form is reseted. How do I leave there the values he inserted? 2. When the...
1
by: inderjit S Gabrie | last post by:
Hi all Here is the scenerio ...is it possibly to do this... i am getting valid course dates output on to a web which i have designed ....all is okay so far , look at the following web url ...
2
by: Jack | last post by:
Hi All, What is the PHP equivilent of Oracle bind variables in a SQL statement, e.g. select x from y where z=:parameter Which in asp/jsp would be followed by some statements to bind a value...
3
by: Sandwick | last post by:
I am trying to change the size of a drawing so they are all 3x3. the script below is what i was trying to use to cut it in half ... I get errors. I can display the normal picture but not the...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.