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

And-elimination-introduction rule - artificial intelligence, And-Eliminatio...

And-Elimination-Introduction rule - Artificial intelligence: And-Elimination In English, this says that "if you know that many things are all true, then you know that any

Define polling, Define Polling. A Polling process is used to recognize...

Define Polling. A Polling process is used to recognize the highest priority source by software means. In this process there is one common branch address for all interrupts.

Advantages of specifying parameter assignment using defparam, State The adv...

State The advantages of specifying parameter assignments using defparam are: - This method always has precedence over specifying parameters at the instance of instantiation.

Importance of barrier free design and web accessibility, Problem: (a) ...

Problem: (a) Accessibility can be classified as below: (i) Barrier-free design (ii) Web accessibility. Describe the importance of barrier free design and web accessibi

Documentation introduction, Documentation is done to give others with infor...

Documentation is done to give others with information and ease maintenance. The best documentation is done in the headers (function and scripts) and directly in the code. Any usefu

Assembly language programming, I need help to create test cases for the MIP...

I need help to create test cases for the MIPS Instruction set architecture

Use verilog function to define the width of a multi-bit port, Can I use a V...

Can I use a Verilog function to define the width of a multi-bit port, wire, or reg type? Width  elements  of  ports,  wire  or  reg  declarations  require  a  constant  in  bot

Hazard (computer architecture), Hazard (computer architecture): In the...

Hazard (computer architecture): In the computer architecture, a hazard is a possible problem that can occurs in a pipelined processor. It concern to the possibility of erroneo

Webforms application and to an mvc application, What is the difference amon...

What is the difference among adding routes, to a webforms application and to an mvc application? Ans) To add routes to a webforms application, we use MapPageRoute() process of

Error handling in hard disk, Error handling in Hard disk in computer archit...

Error handling in Hard disk in computer architecture : Modern drives also make widespread use of Error Correcting Codes (ECCs), specifically Reed-Solomon error correction.

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