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

Minimum power dissipation of digital logic family, Which digital logic fami...

Which digital logic family has minimum power dissipation ? Ans. The minimum power dissipation of digital logic family is CMOS. CMOS being an unipolar logic family, occupy a to

Explain the working of a 3-bit D/A converter, With the help of R-2R binary ...

With the help of R-2R binary network, explain the working of a 3-bit D/A converter and derive an expression for the output voltage. Ans: We see a 3-bit R-2R ladder D/A netwo

Application area of artificial intelligence, 1. The State of the Art: What ...

1. The State of the Art: What can AI do today? A concise answer is difficult because there are so many activities in so many subfields. Here we sample a few applications other

Define the method of implementation, Define the method of Implementation ...

Define the method of Implementation Once "final" system has been designed it is then essential to put together the software and hardware and introduce the new system. There ar

Difference between shadow and override in programming, Overriding tell us o...

Overriding tell us only the methods, but shadowing tells us the entire element.

Compare the memory devices ram and rom, Compare the memory devices RAM and ...

Compare the memory devices RAM and ROM. Ans. Comparison of Semi-conductor Memories RAM ands ROM The advantages of ROM are: 1. This is cheaper than RAM. 2. This is non-volatil

Explain policies for process scheduling, Explain any three policies for pro...

Explain any three policies for process scheduling that uses resource consumption information. All three policies for process scheduling are explained below in brief: 1. Fi

Determine what is the frame rate and frame duration, (i)  A multiplexer com...

(i)  A multiplexer combines four 100-Kbps channels using a time slot of 4 bits. Each Frame has the size of 16 bits. a)  Show the output with the four inputs as shown in the figu

What guarantees the integration of all application modules, What guarantees...

What guarantees the integration of all application modules? The R/3 basis system guarantees the integration of all application modules.  The R/3 basis s/w gives the run time e

IEEE802.4 Token Bus Network, en a five station token bus LAN with station a...

en a five station token bus LAN with station addresses of 3000, 500, 100, 70, and 50. Stations with addresses of 5000, 4000, 400, 90, and 60 are waiting to enter the ring. Assume a

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