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

Explain about zip drive, Q. Explain about Zip Drive? Zip Drive: Loads...

Q. Explain about Zip Drive? Zip Drive: Loads of files, Volumes of data have definitely increased onus on today's computer user and protection of this data is what bugs every

Explain about operand address calculation, Q. Explain about Operand Address...

Q. Explain about Operand Address Calculation? In actual machines effective address can be a register address, memory or I/O port address. Register reference instructions for ex

BCD ADDER, create a BCD adder combinational ckt. that adds 2 digit BCD inpu...

create a BCD adder combinational ckt. that adds 2 digit BCD inputs

Explain about system deadlock, Q. Explain about System Deadlock? A dead...

Q. Explain about System Deadlock? A deadlock denotes to the condition when simultaneous processes are holding resources and putting off each other from finishing their executio

Which translator perform macro expansion, Which translator perform macro ex...

Which translator perform macro expansion, is called? Ans. Macro pre-processor perform macro expansion.

What is object repository, Object Repository means not a set of objects. ...

Object Repository means not a set of objects. It's a common repository for all the people (Testing, Developers) for seeing all the data in one Login. For example QA needs

Determine number of final selector in 10000 line exchange, In a 10000 line ...

In a 10000 line exchange, 0000 to 2999 is allotted to x group of subscribers, out of which 40% are active during busy hour. The remaining numbers are domestic numbers out of which

What data structure is used by an operating system, What data structure is ...

What data structure is used by an operating system to keep track of process information? Explain A data structure termed as process control block (PCB ) is used by an operat

Explain about the term e-brokerage briefly, Explain about the term E-broker...

Explain about the term E-brokerage briefly. An e-brokerage is an investment house which allows you to buy and sell stocks and acquire investment information through its Web sit

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