How can I get Single byte from 'int' type variable? Can we
alter single bit or multiple bits in int type variable? if so,
How?
Answers were Sorted based on User's Feedback
Answer / hassan noureddine
Use bit wise unary commands:
int i = 0x5678
char LowByte = (char) i; // yield 8;
To alter the bits
i &= 0xFF; // reset upper 2 bytes
i ^= 0xFFFF // invert all bits
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / vignesh1988i
we know that integer allocates 2 bytes of memory.
to get a single byte we must type cast the integer to character using pointers.
why because,when we take int i=10;,the binary representation for 10 is 1010 or in 8 bits it can be 0000 1010.
so in memory 2 bytes will be allocated as the whole for int.
let us consider: binary 10 address (2bytes)
0000 65534
0010 65535
in the memory according to the bytes prority the binary numbers will get stored.
so , our task is to take only one byte from int.
int i=10,*j;
j=&i;
printf('%d\n",(char*)j); // type casting of ptr varables
now. in the above ex. and according to the preceeded coding it will print 0 as the output ,which is the output from only one byte of memory location (65534).
any corrections , pl. notify me
thank u
| Is This Answer Correct ? | 0 Yes | 2 No |
How can I change the size of the dynamically allocated array?
What are bitwise shift operators in c programming?
Given a number N, product(N) is the product of the digits of N. We can then form a sequence N, product(N), product(product(N))… For example, using 99, we get the sequence 99, 99 = 81, 81 = 8. Input Format: A single integer N Output Format: A single integer which is the number of steps after which a single digit number occurs in the sequence. Sample Test Cases: Input #00: 99 Output #00: 2 Explanation: Step - 1 : 9 * 9 = 81 Step - 2 : 8 * 1 = 8 There are 2 steps to get to this single digit number. Input #01: 1137638147
What is the function of multilevel pointer in c?
What is the value of h?
which operator having highest precedence? a.)+ b.)++ c.)= d.)%
Hi, main() { } Is a user defined function or Built in Functionn
What does *p++ do? What does it point to?
How can I direct output to the printer?
Describe explain how arrays can be passed to a user defined function
Reverse the bit order in a single macro. eg. i/p = 10010101 --> o/p = 10101001
explain what is fifo?