Interview answers verified by specialists.

Find interview questions and answers on this website:

See right interview answers on 30 common job interview questions

How can type-insensitive macros be created?

A type-insensitive macro is a macro that performs the same basic operation on different data types. This task
can be accomplished by using the concatenation operator to create a call to a type-sensitive function based
on the parameter passed to the macro. The following program provides an example:

#include <stdio.h>
#define SORT(data_type) sort_ ## data_type
void sort_int(int** i);
void sort_long(long** l);
void sort_float(float** f);
void sort_string(char** s);
void main(void);
void main(void)
     int** ip;
     long** lp;
     float** fp;
     char** cp;

This program contains four functions to sort four different data types: int, long, float, and string (notice
that only the function prototypes are included for brevity). A macro named SORT was created to take the data
type passed to the macro and combine it with the sort_ string to form a valid function call that is appropriate
for the data type being sorted. Thus, the string


translates into


after being run through the preprocessor.

Do you know that?

These cloud based services help freelancers: Facebook, LinkedIn, Twitter, Google Docs, DropBox, Skype, FreshBooks Next