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

Doubly linked list, A doubly linked list is like a linked list except that ...

A doubly linked list is like a linked list except that each node has a pointer both to the next node in the list and to the previous node in the list. There are also pointers to th

#title.sequential circuit, design modulo 12 up synchronous counter using t ...

design modulo 12 up synchronous counter using t flip flop

A switch statement , Which is more efficient, a switch statement or an if e...

Which is more efficient, a switch statement or an if else chain? Ans) The differences, if any, are likely to be small. The switch statement was designed to be efficiently impl

C++ program on pebble merchant, how to solve pebble merchant problem.? codi...

how to solve pebble merchant problem.? coding for it..!

Define software is in machine language or not, Define Software is in machin...

Define Software is in machine language or not Software is in machine language, today it is often developed by first writing in a high-level language or an assembly language or

How does tcp take of wrapping over of sequence numbers, How does TCP take o...

How does TCP take of wrapping over of sequence numbers? To handle out of instruct deliveries, transport protocols utilize sequencing. The sending side attaches a sequence numbe

Define router, A router is used to Distributes information among networ...

A router is used to Distributes information among networks.

Explain about interrupt servicing routines, Q. Explain about Interrupt serv...

Q. Explain about Interrupt servicing routines? First the situation is to be checked as to why the interrupt has happened. That includes not only device but also why the device

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