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

Parallelism conditions, Parallelism Conditions As discussed earlier, pa...

Parallelism Conditions As discussed earlier, parallel computing needs that the segments to be implemented in parallel must be free of each other. Thus, before implementing para

State the advantages off-the-shelf, State the advantages Off-the-shelf ...

State the advantages Off-the-shelf -  tends to be less expensive as development costs can be spread over many users -  can be more sophisticated as large sales bring in c

Define lazy swapper, Define lazy swapper.  Rather than swapping the who...

Define lazy swapper.  Rather than swapping the whole process into main memory, a lazy swapper is used. A lazy swapper never swaps a page into memory unless that page will be re

How the characters used in operand data type, Q. How the Characters used in...

Q. How the Characters used in operand data type? A common form of data is character or text strings. Characters are signified in numeric form mostly in ASCII (American Standard

Explain a TTL NAND gate and its operation, Give the circuit of a TTL NAND g...

Give the circuit of a TTL NAND gate and explain its operation in brief. Ans: Operation of TTL NAND Gate: Fig.(d) Demonstrates a TTL NAND gate with a totem pole output.

Explain the term - restating the requirements, Restating the Requirements ...

Restating the Requirements To have clarity of analytical model of system you must state requirements specific performance constraints with optimization criteria in one documen

Reading decision trees, Reading Decision Trees: However we can justifi...

Reading Decision Trees: However we can justified by see that a link between decision tree representations and logical representations that can be exploited to make it easier t

Determine maximum possible time of 4-bit synchronous counter, A 4-bit synch...

A 4-bit synchronous counter uses flip-flops with propagation delay times of 15 ns each.  The maximum possible time required for change of state will be ? Ans. 15 ns since in sy

What is difference between cgi and java, CGI and JAVA are fundamentally dis...

CGI and JAVA are fundamentally dissimilar, and for most applications are NOT interchangable. CGI is a protocol for running programs on a WWW server. Whilst JAVA can also be us

Determine the benefits of message passing, Determine the benefits of Messag...

Determine the benefits of Message passing Message passing provides two major benefits: An object's properties are expressed by its methods, thus message passing support

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