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

Limitation identified in amdahls law, Q. Limitation identified in Amdahls l...

Q. Limitation identified in Amdahls law? There is one main limitation identified in Amdahl's law. As said by Amdahl's law workload or problem size is forever fixed as well as n

Prototyping and incremental development, a) Write  the main differences amo...

a) Write  the main differences among prototyping and incremental development.    b) Explain the commonality and main differences among agile approach and RUP.

Discuss about fourth generation electronic computers, Fourth Generation (19...

Fourth Generation (1972-1984) The next generation of computer systems used the large scale integration (LSI -1000 devices per chip) and very large scale integration (VLSI - 100

Make a generalized program that accepts a number and base, Q. Make a gener...

Q. Make a generalized program that accepts a number & base, convert it into the given base. Perform necessary validations.

Rsa encryption function- cryptography, The general method for constructing ...

The general method for constructing the parameters of the RSA cryptosystem can be described as follows: Select two primes p and q Let N = pq and determine ∅ (N) = (p - 1

Define mfc, Define MFC. To accommodate the variability in response time...

Define MFC. To accommodate the variability in response time, the processor waits unless it receives an indication that the requested read operation has been done. The control s

State about sixth generation electronic computers, Sixth Generation (1990 -...

Sixth Generation (1990 - ) This  generation  begun  with  many  gains  in  parallel  computing,  both  in  hardware area and in improved understanding of how to build up algori

Explain the daa instruction, Explain the DAA DAA instruction follows th...

Explain the DAA DAA instruction follows the ADC or ADD instruction to adjust the result into a BCD result. DAA instruction functions only with the AL register, this addition sh

What is a zombie, What is a zombie? When a program forks and the child ...

What is a zombie? When a program forks and the child finishes before the parent, the kernel still keeps some of its information about the child in case the parent might require

What is dispatch unit, What is dispatch unit? A separate unit which we ...

What is dispatch unit? A separate unit which we call the dispatch unit fetch instructions from the front of the queue and sends them to the execution unit. The dispatch unit al

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