How can type-insensitive macros be created?

Asked by Last Modified  

Follow 0
Answer

Please enter your answer

Computer & Maths Professor

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.
Comments

Computer Wizard

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...
read more
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 #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; ... sort(int)(ip); sort(long)(lp); sort(float)(fp); sort(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 sort(int)(ip); translates into sort_int(ip); after being run through the preprocessor. read less
Comments

VBA/Excel/Access/SQL Server

Similar to polymorphism in c++ if you are familiar to this. A type insensitive macro is a macro that perform the same base operation on different data type.Have common name but different signature. This task can be accomplished by using the concatenation operator to create a call to a type sensitive...
read more
Similar to polymorphism in c++ if you are familiar to this. A type insensitive macro is a macro that perform the same base operation on different data type.Have common name but different signature. 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/program/module/function. read less
Comments

By using concatenation operator we can create a type-insensitive macro. For Example: #define ADD(data_type) add_ ## data_type void add_int(int i, int j) { int h = i+j; printf("%d",h); } void add_float(float k, float l) { float m = k+l; printf("%f",m); } void main(void) { int...
read more
By using concatenation operator we can create a type-insensitive macro. For Example: #define ADD(data_type) add_ ## data_type void add_int(int i, int j) { int h = i+j; printf("%d",h); } void add_float(float k, float l) { float m = k+l; printf("%f",m); } void main(void) { int a=1, b=1; float c=1.1, d=1.1; ADD(int)(a,b); ADD(float)(c,d); } here, ADD(int)(a,b); translates into add_int(a,b); read less
Comments

View 2 more Answers

Related Questions

Is it necessary for a programmer to start his career by learning the C language first?
Not necessarily to learn C language, but if you learn C langauge it is easy to grasp other proramming languages.
Profile Photo
Shilpa
What does # mean in C?
#include is a preprocessor directive which is used to include user-defined file.
Profile Photo
Sridevi
0 0
View Comments5
What are security issues in the C language?
Some common security issues in C include buffer overflows, which can lead to arbitrary code execution; format string vulnerabilities, which can be exploited to read or write arbitrary memory locations;...
Profile Photo
Avinesh
0 0
View Comments7
Why is a compiler used for language C and not an interpreter?
Hi, C is a structured programming language. It’s code consists of many macros, function calls references etc., which is required to be decoded before program’s execution can take place, so that any error...
Profile Photo
Savitha
0 0
View Comments5
How to improve my c knowledge........
practice it as much as possible. for beginning, use let us c by yashwant kanetkar
Profile Photo
Anish

Now ask question in any of the 1000+ Categories, and get Answers from Tutors and Trainers on UrbanPro.com

Ask a Question

Related Lessons

What Are IT Industries Performance Metrics?
1. Outstanding Expectation: Eligible to get Promotion easily and good salary hike. Always preferrable to go abroad. 2. Exceed Expectation: Can get Promotion as per schedule of company with good salary...
Profile Photo

C Language
To get help in C window (for keywords, functions) press Alt +F1.To delete a single line , use the shortcut key CTRL +Y.If you got error about the path when you execute a C pgm, check the Options menu =>Directories.
T

Thilagam S.

0 0
View Comments0

An Interesting discussion about malloc( ) and calloc( )
What are malloc( ) and calloc( )? Simply putting they are the predefined functions in C language. Malloc( ) and calloc( ) are two such functions which are used for more or less identical purpose and...
Profile Photo

Facts about C language
C programming language was developed in 1972 by Dennis Ritchie at AT&T Bell Labs. It was developed to overcome the problems of languages such as B, BPCL. It was developed to write the Unix operating...
Profile Photo

C-Program Swapping Contents Of Variables Using Function [Call By Reference Method]
//Header Files #include#include // User defined functions swap with 2 pointer variables passed as an argument list void swap(int*i,int*j){ // Local variable temp int temp; // swapping contents using...
Profile Photo

Recommended Articles

Lasya Infotech is a Hyderabad based IT training institute founded in 2016 by O Venkat. Believing in his innovation, passion and persistence and with a diverse blend of experience, he started his brainchild to deliver exemplary professional courses to aspiring candidates by honing their skills. Ever since the institute envisions...

Read full article >

Brilliant Academy is one of the reputed institutes for B.Tech tuition classes. This institute is specialised in delivering quality tuition classes for B.E, Engineering - all streams and Engineering diploma courses. Incorporated in 2012, Brillant Academy is a brainchild of Mr Jagadeesh. The main motto of the academy is to...

Read full article >

Hadoop is a framework which has been developed for organizing and analysing big chunks of data for a business. Suppose you have a file larger than your system’s storage capacity and you can’t store it. Hadoop helps in storing bigger files than what could be stored on one particular server. You can therefore store very,...

Read full article >

Microsoft Excel is an electronic spreadsheet tool which is commonly used for financial and statistical data processing. It has been developed by Microsoft and forms a major component of the widely used Microsoft Office. From individual users to the top IT companies, Excel is used worldwide. Excel is one of the most important...

Read full article >

Looking for C Language Classes?

Learn from the Best Tutors on UrbanPro

Are you a Tutor or Training Institute?

Join UrbanPro Today to find students near you