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

Maximum size of a database, What is the maximum size of a database that can...

What is the maximum size of a database that can be opened in Microsoft Access? Ans) 1 Gigabyte

8085 programs, what is the theory used to check whether a number is negativ...

what is the theory used to check whether a number is negative or positive?

Calculate the complexity of sorting algorithms, How do you calculate the co...

How do you calculate the complexity of sorting algorithms? Find the complexity of Insertion sort and Bubble Sort.                 The difficulty of sorting algorithms depends o

Solve the assignment of finite automata, Solve the assignment of NFA-- Fini...

Solve the assignment of NFA-- Finite Automata and Formal Language Project Description: I have an assignment on Finite Automata and Formal Languages ( Nondeterministic Fini

What is locality of reference, What is locality of reference? Analysis ...

What is locality of reference? Analysis of program represents that many instructions ion localized areas of the program are implemented repeatedly during some time period, and

What are the roll and page areas, What are the roll and page areas? Ro...

What are the roll and page areas? Roll and page areas are SAP R/3 buffers used to kept user contexts (process requests).  The SAP dispatcher assigns procedure requests to work

TITLE: Signals for digital communications, DETERMINE ANALYTICALY IF THE SIG...

DETERMINE ANALYTICALY IF THE SIGNAL IS PERIODIC OR NOT - X[n] = 4Cos(Pi n)

System engineering hierarcy, develop system engineering hirarcy for public ...

develop system engineering hirarcy for public health care?

Explains the various levels of parallel processing, Levels of parallel proc...

Levels of parallel processing We could have parallel processing at four levels. i)  Instruction Level: Most processors have numerous execution units and can execute numero

#decoders, #what is decoders? explain with diagram

#what is decoders? explain with diagram

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