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

Nor gate, The NOR gate. The NOR gate is equivalent to an OR gate follow...

The NOR gate. The NOR gate is equivalent to an OR gate followed by a NOT gate so that the output is at logic level 0 when any of the inputs are high otherwise it is at logic le

What is grade of service, What is Grade of service? Grade of service:...

What is Grade of service? Grade of service: In a loss system, the traffic carried through the network is usually lower than the actual traffic offered to the network through

Explain criteria for choosing type of file organization, What criteria shou...

What criteria should be adopted for choosing type of file organization. Selecting a file organization is a design decision; therefore it must be done having in mind the achieve

Provision for data buffering, Data buffering is quite helpful for purpose o...

Data buffering is quite helpful for purpose of smoothing out gaps in speed of processor and I/O devices. Data buffers are registers that hold I/O information temporarily. I/O is pe

Define the terms- action semantics and argouml, Define the terms- Action Se...

Define the terms- Action Semantics and  ArgoUML Action Semantics : Action semantics is a group of firms that have responded to the OMG's RFP to define the action semantics fo

Modified digital clock, can you deign the schematic of a modified digital c...

can you deign the schematic of a modified digital clock at the gate as well as the IC level and then construct the circuit, lab spec and industral spec?

Dynamic programming, The fi rst task will involve doing a little background...

The fi rst task will involve doing a little background reading on Dynamic Programming to get up to speed. The second task is to write the code: Search Space Write a function whi

Presentation of the report, This will be based on presentation of the repor...

This will be based on presentation of the report, complexity of the task, degree of completion and uniqueness of your problem.  As a part of this question, you should also inclu

What is tape backup, Q. What is Tape Backup? Magnetic tapes are used th...

Q. What is Tape Backup? Magnetic tapes are used these days in computers for the below purposes: Backing up data stored in disks. It is essential to regularly save data s

What is state and state diagram, What is state and state diagram? A sta...

What is state and state diagram? A state is an abstraction of values and links of an object. Set of values and links are grouped together into a state according to the group be

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