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

Role of internet in progressing sciences, Ask question #Minimum 100 wordswh...

Ask question #Minimum 100 wordswhat is the .role of internet in progressing sciences accepted#

Is the basic list deleted when the new list is created, Is the basic list d...

Is the basic list deleted when the new list is created? No.  It is not removed and you can return back to it using one of the standard navigation functions like clicking on th

Prove equations by using the boolean algebraic theorems, Prove the equation...

Prove the equations using the Boolean algebraic theorems that is given below A‾BC + AB‾C + ABC‾+ ABC = AB + BC + AC Ans. The equation given is A‾BC + AB‾C + ABC‾+ ABC = AB + BC +

Give detail explanation about arithmetic micro-operations, Give detail expl...

Give detail explanation about Arithmetic Micro-operations These micro-operations perform some essential arithmetic operations on numeric data stored in the registers. These bas

Classification of pipeline processors, Classification of Pipeline Processor...

Classification of Pipeline Processors In this part, we explain various types of pipelining that can be useful in computer operations. These types depend on the following factor

What is called static and dynamic branch prediction, What is called static ...

What is called static and dynamic branch prediction? The branch prediction decision is always the similar every time a given instruction is implemented. Any approach that has t

What is control unit, What is Control Unit Control Unit: The control u...

What is Control Unit Control Unit: The control unit issue control signals to perform exact operation and it directs the entire computer system to carry out keeps program instr

Communication traffic and message queues, The Communication Traffic gives a...

The Communication Traffic gives a pictorial view of the communication traffic in the interconnection network with respect to the time in progress. The Communication Traffic shows t

Operating system, define request edge and assignment edge

define request edge and assignment edge

What is a 3-d accelerator, What is a 3-D Accelerator?  3-D Accelerator...

What is a 3-D Accelerator?  3-D Accelerator is no magic technology. It is merely an accelerator chip which has built-in ability to perform the mathematics and algorithms neede

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