Defines a macro, Computer Engineering

Assignment Help:

Defines a macro

Defines a macro with the given name, having as its value the given replacement text. After that (for the rest of the current source file), wherever the preprocessor sees that name, it will replace it with the replacement text. The name follows the same rules as ordinary identifiers (it can contain only letters, digits, and underscores, and may not begin with a digit). Since macros behave quite differently from normal variables (or functions), it is customary to give them names which are all capital letters (or at least which begin with a capital letter). The replacement text can be absolutely anything--it's not restricted to numbers, or simple strings, or anything.

The most common use for macros is to propagate various constants around and to make them more self-documenting. We've been saying things like

char line[100];

...

getline(line, 100);

but this is neither readable nor reliable; it's not necessarily obvious what all those 100's scattered around the program are, and if we ever decide that 100 is too small for the size of the array to hold lines, we'll have to remember to change the number in two (or more) places.

A much better solution is to use a macro:

#define MAXLINE 100 char line[MAXLINE];

...

getline(line, MAXLINE);

 


Related Discussions:- Defines a macro

Technology enablers - information system, Technology Enablers - Information...

Technology Enablers - Information System The progression described above has been enabled by five main factors: Increases in processing capability allowing smaller and

What is software and hardware interrupt, What is Software and hardware inte...

What is Software and hardware interrupt The software interrupts are program instructions. These instructions are inserted at desired location in a program. A program formed int

Rdbms relational database system, RDBMS relational database system - Re...

RDBMS relational database system - Relational databases are composed of relations and managed through relational operations, and governed through data integrity constraints.

Implementation and testing, In this stage of the project you are required t...

In this stage of the project you are required to create a Design document, the Design document must contain the following:  Structure chart Pseudo-code Data Dictionary

What is a priority interrupt, What is a Priority Interrupt? A priority ...

What is a Priority Interrupt? A priority interrupt is an interrupt that establishes a priority over the various sources to determine which condition is to be serviced first whe

Explain non-adapting routing, Explain non-adapting routing. Systems whi...

Explain non-adapting routing. Systems which do not implement adaptive routing are explained as using non-adapting or static routing, which routes by a network are explained by

What are the necessary elements of an e-banking site, What are the necessar...

What are the necessary elements of an e-banking site? E-banking systems rely upon a number of common elements or processes. The given list comprises many of the potential elem

Define the term- encryption, Define the term- encryption The user would ...

Define the term- encryption The user would then type in O P E and card purchase will be authorised. This extra protection is used as well as encryption. Some of the new syste

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd