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

Show system call for cloning, Show System call for cloning.  Standard f...

Show System call for cloning.  Standard form of Clone function is as follows: Int clone (Int (*FN) (), void *child stack, Int flag, intargs,); Parameter FN is Pointer fro

What are the different methods of passing data, What are the different meth...

What are the different methods of passing data? There are three different methods of passing data Calling by reference    Calling by value Calling by value and result

Explain that datagram cannot be larger than mtu of a network, "A datagram c...

"A datagram cannot be larger than the MTU of a network over which it is sent." Is the statement true or false? Explain with the help of a suitable example. All hardware technol

What are kinds of models, What are kinds of models? Class model - Objec...

What are kinds of models? Class model - Objects in the system and their relationships. State model - Life history of the objects. Interaction model - Interactions between

Computer network, how Hierarchical Routing implement in c or cpp

how Hierarchical Routing implement in c or cpp

Difference between latches and flip-flops based designs, What is the differ...

What is the difference between latches and flip-flops based designs Latches are level sensitive whether flip-flops are edge sensitive. So, latch based design and flop based des

Eight-stage process - conjunctive normal forms, Eight-stage process - Conju...

Eight-stage process - Conjunctive normal forms: Hence we notice the following eight-stage process converts any sentence with CNF as:  1.  Eliminate all arrow connectives by

Programming.., converting 10 ASCII characters to excess three using mplab i...

converting 10 ASCII characters to excess three using mplab ide

What is the difference between awt and swt, SWT (Standard Widget Toolkit) i...

SWT (Standard Widget Toolkit) is a totally independent Graphical User Interface (GUI) toolkit from IBM. They formed it for the creation of Eclipse Integrated Development Environmen

How control functions help in signalling and control, How different control...

How different control function categories help in signalling and control. Events happening outside the exchange on the line units, trunk junctions and inter exchange signalin

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