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

State the types of common toes deformities a, Common toes deformities are: ...

Common toes deformities are: 1. Hallux valgus: Deviation of great toe towards the second toe resulting in prominence of first metatarsal head.  Later on there is formation of

Explain data mining, Data Mining is an analytic method designed to explore...

Data Mining is an analytic method designed to explore data and then to validate the findings by applying the detected patterns to latest subsets of data.  The ultimate goal of dat

What is the significance of nonactionattribute, In general, all public proc...

In general, all public processes of a controller class are treated as action processes. If you require prevent this default behaviour, just decorate the public process with NonActi

Draw a schematic for managing dynamic storage allocation, Draw a simple sch...

Draw a simple schematic for managing dynamic storage allocation. A simple schematic for managing dynamic storage allocation is as follows: Block size pointe

High level language program characteristics, Q. High Level Language Program...

Q. High Level Language Program Characteristics? So it is clear that new architectures must support high-level language programming. A high-level language system can be implemen

Scoreboards- constrained-random verification methodology, Scoreboards- Cons...

Scoreboards- Constrained-Random Verification Methodology Scoreboards are used to verify that data has successfully reached its destination whereas monitors snoop the interfaces

What is file scope, Explain File scope File scope: The variables and ...

Explain File scope File scope: The variables and functions with file scope appear outside any block or list of parameters and are accessible from any place in the translation

What is spread spectrum, Question: (a) In order to encourage the develo...

Question: (a) In order to encourage the development mobile technologies, Europe has opted for standardisation. What is the rationale behind this? Provide concrete examples of h

How a typical dma controller can be interfaced to an 8086, Demonstrate how ...

Demonstrate how a typical DMA controller can be interfaced to an 8086/8085 based maximum mode system.  For 8088 in maximum mode: The RQ/GT0 and RQ/GT1 pins are used to is

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