AC program contains the following statements: char u, v = \'A\': char *pu, *pv =
ID: 3884645 • Letter: A
Question
AC program contains the following statements: char u, v = 'A': char *pu, *pv = &v;: *pv = v + 1: u = *pv + 1: pu = &u;: Suppose each character occupies 1 byte of memory. If the value assigned to U is stored in (hexadecimal) address F8C and the value assigned to v is stored in address F8D, then a) What value is represented by &v;? b) What value is assigned to pv? c) What value is represented by *pv? d) What value is assigned to u? e) What value is represented by &u;? f) What value is assigned to pu? g) What value is represented by *pu?Explanation / Answer
Solution:
It is not mentioned in the question that whether we need to answer if all the statements are executed, but I am considering all the statements are executed. If this is not the case please let me know in the comment section.
a)
The value represented by &v is F8D, because & is addressof operator which means the statement is asking the address of v.
b)
pv is a variable which contains the address of v and the value assigned to pv is F8D
c)
* is a dereference operator and the value represented by *pv is B, because at first 'A' is present at *pv (please note that pv containt &v and by * operator we are accessing what inside that address i.e. F8D)
but by the statement *pv= v+1;
it is increased by one hence the answer.
d)
The value assigned to u is 'A'.
e)
The value assigned to &u is F8C.
f)
The value assigned to pu is F8C
g)
The value present at *pu is 'C', because first u=*pv+1 ('B'+1) makes u to 'C' then the adress of u is assigned to pu.
I hope this helps if you find any problem. Please comment below. Don't forget to give a thumbs up if you liked it. :)
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.