考虑一个变式的<代码>unsign int a; in C。
现在我要说的是,在这个变数中,在1个变量中,我只字不提。
注:变量具有一定价值。 http://code>a=(1<<i)不适用。
a=a+(1<<i)
将发挥作用,但我正在寻找最快的方式。 什么?
考虑一个变式的<代码>unsign int a; in C。
现在我要说的是,在这个变数中,在1个变量中,我只字不提。
注:变量具有一定价值。 http://code>a=(1<<i)不适用。
a=a+(1<<i)
将发挥作用,但我正在寻找最快的方式。 什么?
Bitwise or it. e.g. a |= (1<<i)
Some useful bit manipulation macros
#define BIT_MASK(bit) (1 << (bit))
#define SET_BIT(value,bit) ((value) |= BIT_MASK(bit))
#define CLEAR_BIT(value,bit) ((value) &= ~BIT_MASK(bit))
#define TEST_BIT(value,bit) (((value) & BIT_MASK(bit)) ? 1 : 0)
The most common way to do this is:
a |= (1 << i);
This is only two operations - a shift and an OR. It s hard to see how this might be improved upon.
You should use bitwise OR for this operation.
a |= 1 << i;
You could probably use
a |= (1 << i)
但它却取得了许多成就。 业绩好坏,你看不出任何区别。
您也许能够尝试在以下表格中打造一个表格:i
至比照面罩(如2
=>0x0010
>>0000000100
),但该表没有必要。
您可以使用双tw。
a |= (1 << i);
请注意,这确实是<>而不是 ,其行为与+相同,如果在你重新定位的轨道上已经存在1个。
我执行界旗的方式(直接引用我的密码库,你可以为此目的自由使用,甚至商业目的):
void SetEnableFlags(int &BitFlags, const int Flags)
{
BitFlags = (BitFlags|Flags);
}
const int EnableFlags(const int BitFlags, const int Flags)
{
return (BitFlags|Flags);
}
void SetDisableFlags(int BitFlags, const int Flags)
{
BitFlags = (BitFlags&(~Flags));
}
const int DisableFlags(const int BitFlags, const int Flags)
{
return (BitFlags&(~Flags));
}
无需双向转移业务。
您可能不得不放弃或改变守则,以使用你重新使用的特定变量,但一般而言,它应当做罚款。
For example, let s say I want to find a particular word or number in a file. The contents are in sorted order (obviously). Since I want to run a binary search on the file, it seems like a real waste ...
最好、最小、最快、开放的来源、C/C++ 3d 提供方(在3ds max模型的支持下),而不是通用公平市价,
Given a 10 digit Telephone Number, we have to print all possible strings created from that. The mapping of the numbers is the one as exactly on a phone s keypad. i.e. for 1,0-> No Letter for 2->...
I m trying to find the source of a bug I have found in an open-source application. I have managed to get a build up and running on my Windows machine, but I m having trouble finding the spot in the ...
I wrote below code to readin line by line from stdin ex. city=Boston;city=New York;city=Chicago and then split each line by ; delimiter and print each record. Then in yet another loop I try to ...
I was wondering if there were any good free graphics libraries for C that are easy to use? It s for plotting 2d and 3d graphs and then saving to a file. It s on a Linux system and there s no gnuplot ...
Is there anything other than DDD that will draw diagrams of my data structures like DDD does that runs on Linux? ddd is okay and runs, just kind of has an old klunky feeling to it, just wanted to ...
Please note that this is not homework and i did search before starting this new thread. I got Store an int in a char array? I was looking for an answer but didn t get any satisfactory answer in the ...