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

Define locality of reference, Define locality of reference? What are its ty...

Define locality of reference? What are its types?  During the course of implementation of a program memory references by the processor for both the instruction and the data ten

Types of bus - computer architecture, Types of Bus: Synchronous Bus ...

Types of Bus: Synchronous Bus All devices gain timing information from a common clock line. Each of these intervals constitutes a bus cycle at the time duration w

First in first out method, The First In First Out method assumes items of s...

The First In First Out method assumes items of stocks are issued in the same order as they are received. Thus the goods received first are assumed to be the first to be issued .Any

Which is most general phase structured grammar, Which is most general phase...

Which is most general phase structured grammar? Context – Sensitive is most common phase structured grammar.

How to reduce total amount of disk space in ftp, Q. How to reduce total amo...

Q. How to reduce total amount of disk space in FTP? FTP service compress files to reduce total amount of disk space the files require. Before transferring a file user should te

Advantage of booth and restoring division algorithm, Describe the advantage...

Describe the advantage of using Booth algorithm? Ans:  a) It achieves efficiency in the number of additions needed when the multiplier has a few large blocks of 1's. b) It

What do you mean by synchronization principles, In multiprocessing several ...

In multiprocessing several processors require to communicate with one another. So synchronisation is needed between them. The correctness and performance of parallel execution reli

What is parallel computing, Parallel computing has been a topic of interes...

Parallel computing has been a topic of interest in computing society over the previous few decades. Ever-growing amount of databases and increasing complexity of new problems are

What is an interrupt, What is an interrupt?  An interrupt is an event t...

What is an interrupt?  An interrupt is an event that causes the implementation of one program to be suspended and another program to be implemented.

Knowledge representation - artificial intelligence, Knowledge Representatio...

Knowledge Representation: To recap, we now have some characterizations of "AI", that when an "AI" problem arises, you will be able to put all into context exactly, find the co

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