What is the difference between macros and inline functions?
Answers were Sorted based on User's Feedback
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 |
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 |
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 |
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 |
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 |
how to find string length wihtout using c function?
program to find out date after adding 31 days to a date in the month of febraury also consider the leap year
the process of defining something in terms of itself is called (or) in C it is possible for the functions to call themselves. A function called a) nested function b) void function c) recursive function d) indifinite function
plz answer.... write a program that reads line (using getline) e.g."345", converts each line to an integer using "atoi" and computes the average of all the numbers read. also compute the standard deviation.
How are Structure passing and returning implemented by the complier?
write a program to display numbers from 1 to 10 and 10 to 1?
write a C program : To find out the number of identical words in two files . the file name should be taken as command line argument .
Difference between C and Embedded C?
Tell about strtok & strstr functions
2 Answers HCL, iFlex, Motorola,
1,4,8,13,21,30,36,45,54,63,73,?,?.
10 Answers AMB, Franklin Templeton,
How to print "I Love My India" without using semi colon?
what is the use of ~ in c lang?????