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

The number of control lines for a 8 – to – 1 multiplexer, What is the numbe...

What is the number of control lines for a 8 - to - 1 multiplexer ? Ans. There are 3 control lines, for an 8 to 1 Multiplexer. The control signals are utilized to steer any one

DBMS SQL Queries, How to fetch random ID from table by SQL query Select ...

How to fetch random ID from table by SQL query Select * from Table_Name order by NewID()

How aliases are used in DNS, How aliases are used in DNS? Explain. CNAM...

How aliases are used in DNS? Explain. CNAME entries are analogous to a symbolic link in a file system- the entry gives an alias for other DNS entry. Corporation of expertsmind

Calculate register transfer time, Q. Calculate Register Transfer Time? ...

Q. Calculate Register Transfer Time? A clock isn't included explicitly in any statements discussed above. But it is presumed that all transfers take place during clock edge tra

What is a piconet in a bluetooth context, Problem: (a) IEEE802.11 supp...

Problem: (a) IEEE802.11 supports two types of network architecture, describe these architectures with the support of diagrams detailing the network components. (b) The MAC

What is e-brokerage, What is e-brokerage? E-brokerage is an investment ...

What is e-brokerage? E-brokerage is an investment house that permits you to buy and sell stocks and get investment information from its Web site.

Determine the begin - end keywords, Determine the begin - end keywords ...

Determine the begin - end keywords Group several statements together. Cause the statements to be evaluated sequentially (one at a time) -> Any timing within sequential group

Dfa, design a dfa which accept all the string over a and b ending with ab o...

design a dfa which accept all the string over a and b ending with ab or ba

Determine condition how the output changed of JK flipflop, The output of a ...

The output of a JK flipflop with asynchronous preset and clear inputs is '1'. The output can be changed to '0' with which conditions ? Ans. Through applying J = 1, K = 1 and u

Kirchoff''s laws, i want to make an assignment about kirchoff''s law

i want to make an assignment about kirchoff''s law

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