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

What is the difference among conventional and HD T.V, a. Write down the sal...

a. Write down the salient difference among conventional T.V. and High Definition TV (HDTV) and also highlight the various benefits of digital representation for video. b. Video

What is commitment unit, What is commitment unit? When out-of-order exe...

What is commitment unit? When out-of-order execution is permitted, a special control unit is required to guarantee in-order commitment. This is known as the commitment unit. It

Command line argument value, Make a console application to show different m...

Make a console application to show different messages depending on the command line argument value. Use Select-case statements.(same to switch block)

What is virtual memory, Virtual Memory is a way of extending a computer's m...

Virtual Memory is a way of extending a computer's memory by using a disk file to replicate add'l memory space. The OS remain track of these add'l memory addresses on the hard disk

Explain bitwise operator, Bitwise Operators Like  other  operators  bit...

Bitwise Operators Like  other  operators  bitwise  operators  have  rules  of  precedence  and  associativity  that determine how expressions involved them are evaluated.

Computer Architecture, As an advocate of CISC architecture to RISC architec...

As an advocate of CISC architecture to RISC architecture, what are the merits and demerits of CISC to RISC architecture

Show the memory hierarchy of computer system, Q. Show the Memory Hierarchy ...

Q. Show the Memory Hierarchy of computer system ? Memory in a computer system is essential for storage and subsequent retrieval of instructions and data. A computer system uses

What is nv-ram, Nonvolatile Read Write Memory, also kown as Flash memory. I...

Nonvolatile Read Write Memory, also kown as Flash memory. It is also called as shadow RAM.

What do you mean by term procedure, What do you mean by term procedure? Dif...

What do you mean by term procedure? Differentiate between far call and near call? PROC: PROC and ENDP directives indicate the start and end of a procedure. These directives for

Different ways in which a thread can be cancelled, What are the different w...

What are the different ways in which a thread can be cancelled?  Cancellation of a target thread may occur in two different scenarios: Asynchronous cancellation: One thre

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