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

Prolog, Prolog: Still we can take our card game from the previous lect...

Prolog: Still we can take our card game from the previous lecture like a case study for the implementation of a logic-based expert system. So there the rules were: four cards

Information technology infrastructure, The IT infrastructure of MobTex is s...

The IT infrastructure of MobTex is simple but vital to the operation of the business. All client data, billing, stock management etc is done via a specialised application called "A

Which is not a valid page replacement policy, Which is not a valid page rep...

Which is not a valid page replacement policy? Ans. RU policy (Recurrently used) is not a valid page replacement policy.

Explain list directive in assembly language, Q. Explain list directive in a...

Q. Explain list directive in assembly language? A list directive causes assembler to generate an annotated listing on printer, video screen, disk drive or any combination of th

Transfer data among computers on the internet, Tool that is used to transfe...

Tool that is used to transfer data/files among computers on the Internet TCP (Transfer control protocol)

Find out how many words can be formed from daughter, Find out how many word...

Find out how many words can be formed out of the letters of the word DAUGHTER such that (i)  The vowels are all time together. (ii)  The vowels occupy even places.   Ans:

Instruction length - assembly language, Instruction Length: Variabl...

Instruction Length: Variable-length instructions (Intel 80x86, VAX) need multi-step fetch and decode, but permit for a much more flexible and compressed instruction set.

Program in java, Write a program to display grade message according to the ...

Write a program to display grade message according to the marks

Display methods, Describe a console application project to show the differe...

Describe a console application project to show the different formatting styles used in display methods(i.e.Console.writeLine()).

Identify the process of entering data into a ROM, The process of entering d...

The process of entering data into a ROM is called ? Ans. The process of entering data in ROM is termed as programming the ROM.

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