What is the difference between macros and inline functions?

Answers were Sorted based on User's Feedback



What is the difference between macros and inline functions?..

Answer / kiran kumar yakkala

Macro- does not involve in compilation if there is any
logical error also just replaces the code
inline- look like function, but control doesn't goes to
fucntion and execute, it simply replaces the code like
macro but involves in compilation.

Is This Answer Correct ?    9 Yes 2 No

What is the difference between macros and inline functions?..

Answer / karna

when macro function executing the program control go to that macro function definition part
when inline function executed the definition part of function
came in inline functin call part and executed...program control not chance in any where of the program...

Is This Answer Correct ?    7 Yes 3 No

What is the difference between macros and inline functions?..

Answer / rahul sharma

Macro is a must do thing whearas inline is a hint to the compiler. he may choose not to inline if the function seems complex (it uses recursion or many loops)

Macro can have side effects e.g. the typical
SQUARE(++i); problem

but these problem are not there in inline functions

Is This Answer Correct ?    2 Yes 0 No

What is the difference between macros and inline functions?..

Answer / vishal

1> Macros are always expanded by pre-processor, whereas compiler may or may not replace the inline definitions. You cant force compiler to make a function inline. It is purely compiler based decision.

2> Debugging macros is also difficult.

3>  Expressions passed as arguments to inline functions are evaluated once. In some cases, expressions passed as arguments to macros can be evaluated more than once.

Here i got exact answer : http://www.firmcodes.com/difference-macro-inline-c/

Is This Answer Correct ?    0 Yes 0 No

What is the difference between macros and inline functions?..

Answer / jayapradap a

the way they are handled. Inline functions are parsed by the compiler, whereas macros are expanded by the C++ preprocesso these are The major difference between inline functions and macros

Is This Answer Correct ?    0 Yes 0 No

Post New Answer

More C Interview Questions

What is a scope resolution operator in c?

0 Answers  


main() { int a = 65; printf(“%d %o %x”,a,a,a); } Output 65 101 41 Please explain me.How it is coming like that?

3 Answers   Excel,


what is printf

5 Answers   MVSR, Satyam,


Hai what is the different types of versions and their differences

0 Answers  


What is meaning of tree

0 Answers  






What is include directive in c?

0 Answers  


void main() {int i=2; printf("%d%d%d",i,++i,i++); getch(); }

9 Answers  


ATM machine and railway reservation class/object diagram

0 Answers   Zycus Infotech,


List the different types of c tokens?

0 Answers  


wat is the output int main() { char s1[]="Hello"; char s2[]="Hello"; if(s1==s2) printf("Same"); else printf("Diff"); }

3 Answers  


Explain what is a program flowchart and explain how does it help in writing a program?

0 Answers  


Do you know null pointer?

0 Answers  


Categories