is it possible to have recursive function as inline function ?
this was question asked interview
please help me
Inline is just a request to the compiler to treat the call to a function like a macro and substitute it rather than treating it as a function and making a call. This request may or may not be considered by a compiler where in the second case it treats it as a normal function rather than inline. So even though you do try to make a recursive function inline the compiler will ignore it and consider it as a normal function and work in the normal fashion to execute it.
P.S Doing this is definitely not a good coding practice.
im assuming you are not in your interview right now and are at you pc...so you could just try it out and see ;)
Basically, if the compiler wanted to inline a recursive function, it would be the equivalent to unrolling a loop. The first rule is that the number of recursions (or loops) has to be determined at compile time. So if your recursive function cannot be turned into a for-loop with a fixed number of iterations, then sometimes the compiler has a setting in its optimization options that determines a small fixed amount of unrolling that it will do before calling the normal function. So it is possible that the compiler chooses to put a few inline copies of the function before it calls it normally (essentially, this will be faster if "usually" only a few recursions are needed, otherwise it makes no difference). Generally speaking, the compiler cannot fully inline a recursive function because it would lead to infinite amount of compiled code. And the special cases are when the recursion dept can easily be determined at compile-time and is very shallow (only a few recursive calls), or when optimization settings prescribe that a few recursions are unrolled (i.e. inlined) before the non-inline function call is performed.
Write a C program that should create a 10 element array of random integers (0 to 9). The program should total all of the numbers in the odd positions of the array and compare them with the total of the numbers in the even positions of the array and indicate ...
Hi. so this is actually a continuation from another question of mineHere but i was advised to start a new thread as the original question was already answered.
This is the result of previous question answered :
code for the listbox - datagridview interaction
At the top of the code ...
I have a 2d matrix with dimension (3, n) called A, I want to calculate the normalization and cross product of two arrays (b,z) (see the code please) for each column (for the first column, then the second one and so on).
the function that I created to find the ...