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

Explain status and control registers, Q. Explain Status and Control Registe...

Q. Explain Status and Control Registers? For control of numerous operations several registers are used. These registers can't be used in data manipulation though content of som

Era of first generation computers, Q. Era of first generation computers? ...

Q. Era of first generation computers? The trends that were encountered at the time of the era of first generation computers were: Centralized control in a single CPU (al

What are the functions of dispatcher, What are the functions of dispatcher?...

What are the functions of dispatcher? There are four fuctions of dispatcher:- A)  Equal distribution of transaction load to the work processes.  B) Management of buffer a

Android mobile application, Students are needed to work in group of 3 and m...

Students are needed to work in group of 3 and make an Android mobile application falling under the following categories: Multimedia o    Eg: Camera app, mp3 player, ga

What is file allocation table, Q. What is File allocation table? FAT ma...

Q. What is File allocation table? FAT maps the usage of data space of disk. It comprises information about space used by every individual file and unused disk space as well as

Remote-load latency problem, Remote-load Latency Problem:  When one process...

Remote-load Latency Problem:  When one processor requires some remote loading of data by other nodes, then the processor need to wait for these two remote load operations. The long

Explain how the different access methods work, Question: (a) Primary an...

Question: (a) Primary and secondary memory differs in their way they access data: (i) Mention the four generic access methods usually present in a computer system. (ii) E

Define public identifiers, Q. Define Public Identifiers? Public Identif...

Q. Define Public Identifiers? Public Identifiers: A public identifier is one which is defined within one module of a program however potentially accessible by all of the other

Cn, What is the basic requirement for establishing VLANs?

What is the basic requirement for establishing VLANs?

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