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

Illustrate simple ALU organisation, Q. Illustrate Simple ALU Organisation? ...

Q. Illustrate Simple ALU Organisation? An ALU comprises circuits which perform data processing micro-operations. Though how are these ALU circuits used in conjunction of other

Determine about the locator devices, Determine about the Locator Devices ...

Determine about the Locator Devices Mouse  A mouse is small hand-held box used to position the screen cursor. Wheels or rollers on the bottom of the mouse can be used to r

Enumerate about the specialised hardware, Enumerate about the Specialised h...

Enumerate about the Specialised hardware Specialised hardware such as protected memory or cryptographic memory module for storing and protecting the keys proves to be a good s

What are pooled tables, Normal 0 false false false EN-I...

Normal 0 false false false EN-IN X-NONE X-NONE MicrosoftInternetExplorer4

Describe the concepts of information systems delivery cycle, Write a 2-3 pa...

Write a 2-3 page paper (excluding title, abstract, introduction, and references) describing the concepts of the Information Systems Delivery Cycle (SDLC) and how the Project Manage

What is DRAM and what do you understand by DRAM refreshing, What is DRAM? ...

What is DRAM? What do you understand by DRAM refreshing? With the help of a block diagram, demonstrate how DRAM can be interfaced to a microprocessor. Dynamic RAM (DRAM) is bas

Find minimum number of resource so that no deadlock arise, An operating sys...

An operating system contains 3 user processes each requiring 2 units of resource R. The minimum number of units of R such that no deadlocks will ever arise is? Ans. The minimum

Explain scientific applications and image processing, Scientific Applicatio...

Scientific Applications/Image processing Major of concurrent processing applications from science and other academic disciplines, are mostly have based on numerical simulations

#chemistry, Please explain the construction and working of calomel electrod...

Please explain the construction and working of calomel electrode..

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