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

Blocking and non-blocking network, Blocking and Non-Blocking network In...

Blocking and Non-Blocking network In non-blocking networks the route from any free input node to any free output node can always be offered. Crossbar is an best example of non-

Rhythm, Rhythm Rhythm in art refers to the way that your eye moves thr...

Rhythm Rhythm in art refers to the way that your eye moves through a picture and can be thought of in a similar way to rhythm in music. Your eye will move through some picture

Addressing mode, the 68000 has rich of addressing mode . it concerned with ...

the 68000 has rich of addressing mode . it concerned with the way data is accessed . identify the destion addressing mode for EXG D0, A2

Software engineering, assignment on transaction flow, transform flow, trans...

assignment on transaction flow, transform flow, transform mapping: refining the architectural design

What are the various functional verification methodologies, What are the va...

What are the various functional verification methodologies Ans: TLM (Transaction Level Modelling) Linting RTL Simulation (Environment  involving  :  stimulus  generators,

Explain clone process, Explain Clone process. A clone process is genera...

Explain Clone process. A clone process is generated using primitive type clone by duplicating its parent process. However unlike traditional processes it might be share its con

Explain real time operating system, Explain Real Time Operating System? ...

Explain Real Time Operating System? Real time operating System: A real-time operating system has suitably-defined, fixed time constraints. Processing should be done in the d

Use of delay loops, A very useful application of assembly is to generate de...

A very useful application of assembly is to generate delay loops. These loops are used for waiting for some time before execution of subsequent instruction. However how to find

Syntax and semantics for first-order logic , Syntax and Semanticsx and Sema...

Syntax and Semanticsx and Semantics for First-order logic - artificial intelligence: Propositional logic is limited  in its expressiveness: it may just represent true and false

Determine the complete or gate and and gate decoder, Q. Determine the comp...

Q. Determine the complete OR gate and AND gate decoder count for an IC memory with 4096 words of 1 bit each, using the Linear select memory organization and Two dimensional Memory

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