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

How does computer know that overflow has happened, Q. How does computer kno...

Q. How does computer know that overflow has happened? Illustration: Add numbers 65 and 75 in 8 bit register in signed 2's complement notation.  Here expected result is

Explain their characteristics and limitations of grammar, Identify the diff...

Identify the different classes of grammar. Explain their characteristics and limitations. As proposed through Noam Chomsky that Chomsky hierarchy contains the subsequent level

What is soap and how does it relate to xml, The Simple Object Access Protoc...

The Simple Object Access Protocol (SOAP) uses XML to describe a protocol for the exchange of information in distributed computing environments. SOAP having of three components: an

Explain passing parameters using pointers, Q. Explain Passing Parameters Us...

Q. Explain Passing Parameters Using Pointers ? This method overcomes the drawback of using variable names directly in procedure. It uses registers to pass procedure pointers to

Define modem, Define Modem. A modem changes digital signals into audio ...

Define Modem. A modem changes digital signals into audio tones to be transmitted over telephone lines and also changes audio tones from the lines in digitals signals for machin

First-order inference rules - artificial intelligence, First-Order Inferenc...

First-Order Inference Rules -artificial intelligence: Now we have a perfect definition of a first-order model is,in the same way, we may define soundness for first-order infere

What is the advantage of dividing an email address, What is the advantage o...

What is the advantage of dividing an email address into two parts? The division of an e-mail address in two parts is significant since it achieve two objectives. First, the div

Determine the order in which optimized c-scan would service, Consider the s...

Consider the situation in which the disk read/write head is currently located at track 45 (of tracks 0-255) and moving in the positive direction. Assume that the following track re

Explain session layer of osi model, Explain Session Layer of OSI Model. ...

Explain Session Layer of OSI Model. The session layer manages, establishes and terminates communication sessions. Communication sessions contain service of requests and serv

Explain non-adapting routing, Explain non-adapting routing. Systems whi...

Explain non-adapting routing. Systems which do not implement adaptive routing are explained as using non-adapting or static routing, which routes by a network are explained by

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