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

State the example of begin end, State the Example of begin end module s...

State the Example of begin end module sequential(); reg a; initial begin $monitor ("‰g a = ‰b", $time, a); #10 a = 0; #11 a = 1; #12 a = 0; #13 a = 1; #

Convergence mean with respect to e-commerce, What does the term convergence...

What does the term convergence mean with respect to E-commerce? Convergence with respect to e-commerce   The ability to leverage and integrate the several data sources and

Register transfer - computer architecture, Register transfer - computer arc...

Register transfer - computer architecture: Register transfer: The output and input gates for register Ri are controlled by the signals Riout and Riin respectively.

Show the features of hyper-threading, Q. Show the Features of Hyper-threadi...

Q. Show the Features of Hyper-threading? The significant characteristics of hyper threading are: i) Improved response time and reaction, as well as increased number of users

Versions of small computer systems interface, Q. Versions of small computer...

Q. Versions of small computer systems interface? SCSI-1 calls for a cable with 8 data wires plus one for parity. SCSI-2 allows use of multiple cables to support 16- or

What about division and multiply operations, Q. What about division and mul...

Q. What about division and multiply operations? In most of the older computers divisions and multiply were implemented using subtract/add and shift micro-operations. If a digit

Generic techniques developed - artificial intelligence, Generic Techniques ...

Generic Techniques Developed: In the pursuit of solutions to various problems in the above categories, various individual fundamental techniques have sprung up which have been

What is turnaround time, What is turnaround time? Turnaround time is th...

What is turnaround time? Turnaround time is the interval from the time of submission to the time of completion of a process. It is the sum of the periods spent waiting to get i

Name the widely used language processor development tool, Name the widely u...

Name the widely used Language Processor Development Tools ( LPDTs). Widely used Language processor development tools are: Lex - A Lexical Analyzer Generator Lex assi

Explain the outsourcing barriers that an organization faces, Explain the ou...

Explain the outsourcing barriers that an organization faces. 1. Critical operations that cannot be outsourced. 2. Negative customer reaction. 3. Employee resistance. 4

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