Win a copy of Murach's Python Programming this week in the Jython/Python forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic

Unary operator  RSS feed

 
Shiva Mohan
Ranch Hand
Posts: 486
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Unary operators,conversion rules please

char x1=+x;
int x1=++x;

How the previous conditions are working.Can anyone please explain all the unary conversion rules.
 
Henry Wong
author
Sheriff
Posts: 22840
119
C++ Chrome Eclipse IDE Firefox Browser Java jQuery Linux VI Editor Windows
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
The first one is the unary plus operator. I don't believe the statement as you have it written is legal -- as the result of a mathematical expression gets promoted to int. So you will need to cast it back to a char (assuming x was originally a char).

The second operation is the prefix increment operator. And that should be legal assuming that x was an int (or smaller datatype).

Henry
 
Arun Maalik
Ranch Hand
Posts: 216
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
char x1=+x;
int x1=++x;

In the above statment i am assuming that the data type of that x is int and you are adding that int with char including plus symbole. It will genrate a compile time error that

possible lose of precission

found int
requred character

and your second statment that is int x1=++x. Here ++ is the unary prefix operator. Here the whatever the value in the x that value will be first increse with 1 and assigned to that of x1.
 
It is sorta covered in the JavaRanch Style Guide.
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!