What is the output of printf("%d")?
Answer Posted / arvind kumar yadav
When we use %d the compiler internally uses it to access
the argument in the stack (argument stack). Ideally
compiler determines the offset of the data variable
depending on the format specification string. Now when we
write printf("%d",a) then compiler first accesses the top
most element in the argument stack of the printf which is %
d and depending on the format string it calculated to
offset to the actual data variable in the memory which is
to be printed. Now when only %d will be present in the
printf then compiler will calculate the correct offset
(which will be the offset to access the integer variable)
but as the actual data object is to be printed is not
present at that memory location so it will print what ever
will be the contents of that memory location.
| Is This Answer Correct ? | 1 Yes | 0 No |
Post New Answer View All Answers
What does std mean in c++?
Explain method of creating object in C++ ?
Explain selection sorting. Also write an example.
How do I download c++?
What is the disadvantage of using a macro?
Will a recursive function without an end condition every quit, in practice a) Compiler-Specific (Some can convert to an infinite loop) b) No c) Yes
How do c++ struct differs from the c++ class?
What is the most common mistake on c++ and oo projects?
Explain what are accessor methods?
What you know about structures in C++?
Function can be overloaded based on the parameter which is a value or a reference. Explain if the statement is true.
What is endianness?
What are the extraction and insertion operators in c++? Explain with examples.
What are the uses of c++ in the real world?
How are the features of c++ different from c?