PC Review


Reply
Thread Tools Rate Thread

((i & 1) == 1)

 
 
joso
Guest
Posts: n/a
 
      26th Jun 2008
public static bool isodd(int i)
{
return ((i & 1) == 1);
}

can someone explain me how this is working
 
Reply With Quote
 
 
 
 
Bob Powell [MVP]
Guest
Posts: n/a
 
      26th Jun 2008
An integer is a basic type having a number of binary bits.

Depending on your processer architecture this might be 32 or 64 bits.

The binary and (&) operator performs a bitwise "AND" operation on the
integer which effectively removes all but the least significant bit of the
integer. This may be 1 or 0 depending on the value.

In the case that it is indeed 1, the number is odd.

Hope this was easily understood.

--
Bob Powell [MVP]
Visual C#, System.Drawing

Ramuseco Limited .NET consulting
http://www.ramuseco.com

Find great Windows Forms articles in Windows Forms Tips and Tricks
http://www.bobpowell.net/tipstricks.htm

Answer those GDI+ questions with the GDI+ FAQ
http://www.bobpowell.net/faqmain.htm

All new articles provide code in C# and VB.NET.
Subscribe to the RSS feeds provided and never miss a new article.

"joso" <(E-Mail Removed)> wrote in message
news:g410fi$jac$(E-Mail Removed)...
> public static bool isodd(int i)
> {
> return ((i & 1) == 1);
> }
>
> can someone explain me how this is working


 
Reply With Quote
 
Arne Vajhøj
Guest
Posts: n/a
 
      27th Jun 2008
Bob Powell [MVP] wrote:
> An integer is a basic type having a number of binary bits.
>
> Depending on your processer architecture this might be 32 or 64 bits.


In C# an int is always 32 bit.

Arne
 
Reply With Quote
 
Joe Fawcett
Guest
Posts: n/a
 
      27th Jun 2008


"Arne Vajhøj" <(E-Mail Removed)> wrote in message
news:486436bf$0$90270$(E-Mail Removed)...
> Bob Powell [MVP] wrote:
>> An integer is a basic type having a number of binary bits.
>>
>> Depending on your processer architecture this might be 32 or 64 bits.

>
> In C# an int is always 32 bit.
>
> Arne

He didn't write 'int' but 'integer'. An integer is a mathematical concept,
an int in C# is an alias for a System.Int32 which is an integer represented
in the architecture as 32 bits as opposed to an Int64.

--

Joe Fawcett (MVP - XML)
http://joe.fawcett.name

 
Reply With Quote
 
Arne Vajhøj
Guest
Posts: n/a
 
      28th Jun 2008
Joe Fawcett wrote:
> "Arne Vajhøj" <(E-Mail Removed)> wrote in message
> news:486436bf$0$90270$(E-Mail Removed)...
>> Bob Powell [MVP] wrote:
>>> An integer is a basic type having a number of binary bits.
>>>
>>> Depending on your processer architecture this might be 32 or 64 bits.

>>
>> In C# an int is always 32 bit.

> He didn't write 'int' but 'integer'. An integer is a mathematical
> concept, an int in C# is an alias for a System.Int32 which is an integer
> represented in the architecture as 32 bits as opposed to an Int64.


How do you think that he think about integer as a mathematical type
when he write "An integer is a basic type having a number of binary
bits" ?

Besides it would be even worse if it were the case. Believing that
a mathematical concept depends on processor architecture to be
either 32 or 64 bit.

Arne


 
Reply With Quote
 
 
 
Reply

Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off



Features
 

Advertising
 

Newsgroups
 


All times are GMT +1. The time now is 09:31 AM.