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

An example of the subscriber traffic in erlangs, A subscriber makes three p...

A subscriber makes three phone calls of 3 minutes, 4 minutes and 2 minutes duration in a one hour period. Calculate the subscriber traffic in erlangs, CCS and CM. Subscriber tr

Explain the random scan and raster scan displays, Define Random scan/Raste...

Define Random scan/Raster scan displays?  Random scan is a method in which the display is made by the electronic beam which is directed only to the points or part of the screen

Ia-32 support, In order to support IA-32, the Itanium can switch into 32-bi...

In order to support IA-32, the Itanium can switch into 32-bit mode with special jump escape instructions. The IA-32 instructions have been mapped to the Itanium's functional units.

What is the size limitation of an access database, Size limitation does not...

Size limitation does not relate to number of records in a table within a database. Forms, reports, macros, and modules also add to database size, but is rather minimal compared to

Manipulate the presentation and attributes interactive list, How can you m...

How can you manipulate the presentation and attributes of interactive lists? ---Scrolling by Interactive Lists. ---Setting the Cursor from within the Program. ---Changing

Assembly language - computer architecture, Assembly language: An assem...

Assembly language: An assembly program has a series of instructions--mnemonics that relate to a stream of executable instructions, when translated by an assembler that may be

What is associative search, What is associative search? The cost of an ...

What is associative search? The cost of an associative cache is higher that the cost of a direct mapped cache due to the need to search all 128 bit tag patterns to verify wheth

Definitions of the procedures cons, Show that we can represent pairs of non...

Show that we can represent pairs of nonnegative integers using only numbers and arithmetic operations if we represent the pair a and b as the integer that is the product 2a3b. Give

What are the types of electronic payment system, What are the types of elec...

What are the types of electronic payment system? Types of the electronic payment system are as given below: The most Internet payment way for Business to Customer is credit

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