Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- value bits
- ----- ----
- T: 1 0001
- after bit change
- T: 3 0011
- T is true
- T is false
- #include <iostream>
- #include <bitset>
- using namespace std;
- void set_bits_to_1(void* val){
- char *x = static_cast<char *>(val);
- for (int i = 0; i<2; i++ ){
- *x |= (1UL << i);
- }
- }
- int main(int argc,char *argv[])
- {
- bool T = 3;
- cout <<" value bits " <<endl;
- cout <<" ----- ---- " <<endl;
- cout <<" T: "<< T <<" "<< bitset<4>(T)<<endl;
- set_bits_to_1(&T);
- bitset<4> bit_T = bitset<4>(T);
- cout <<"after bit change"<<endl;
- cout <<" T: "<< T <<" "<< bit_T<<endl;
- if (T ){
- cout <<"T is true" <<endl;
- }
- if ( T == false){
- cout <<"T is false" <<endl;
- }
- }
- movzx eax, BYTE PTR [rbp-33]
- test al, al
- je .L22
- movzx eax, BYTE PTR [rbp-33]
- xor eax, 1
- test al, al
- je .L23
- int foo(bool b, int i) {
- return i + b;
- }
- foo(bool, int):
- movzx edi, dil
- lea eax, [rdi+rsi]
- ret
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement