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

Clustering-coefficient- artificial intelligence, This programming assignmen...

This programming assignment is about computing topological properties of Protein-Protein Interaction (PPI) networks. Recall that a PPI network is represented by a graph G=(V,E) whe

What is mini computer, Q. What is Mini computer? The term minicomputer ...

Q. What is Mini computer? The term minicomputer introduced in 1960's when it was realized that numerous computing tasks don't need an expensive modern mainframe computers howev

What do you mean by numbering and addressing, What do you mean by numbering...

What do you mean by numbering and addressing? Numbering and Addressing: In data networks and telephone, the end equipments are more frequently single units than multiple dev

Pipe, Your shell should accept and execute the pipe "|"  operator. This wil...

Your shell should accept and execute the pipe "|"  operator. This will look like the following: | The functionality of this operator is to execute command1 and send i

Explain shift register with diagram and waveform, Q. Explain Shift register...

Q. Explain Shift register with diagram and waveform.   Q. Write a short note on Decoder.

Difference between next and continue clause, The difference among the next ...

The difference among the next and continue verb is that in the continue verb it is used for a situation where there is no EOF condition that is the records are to be accessed again

Explain b2c -business to consumer, B2C -Business to Consumer  This is w...

B2C -Business to Consumer  This is where the consumer admittance the system of the supplier. It is still a two-way function but is usually complete solely by the Internet.

Logic programs, Logic Programs: A subset of first order logic is "Logi...

Logic Programs: A subset of first order logic is "Logic programs". However logic program having a set of Horn clauses that are implication conjectures when there is a conjunct

Significance of xml in edi and electronic commerce, What is the significanc...

What is the significance of XML in EDI and electronic commerce?   XML has been defined as lightweight SGML XML shows great promise for its inherent ability to permit a " doc

The 2''s complement of the decimal number, What is the 2's complement of th...

What is the 2's complement of the number 1101101 ? Ans. 0010011 is the 2's complement of the number 1101101. As 1's complement of the number 1101101 is 0010010 and 2's comple

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