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

Evaluation functions for cutoff search , Evaluation Functions for Cutoff Se...

Evaluation Functions for Cutoff Search - artificial intelligent Evaluation functions guess the score that may be guaranteed if a specific world state is reached. In chess, such

Microprocessor MIPS Full Adder and Divider with overflow, I need to write a...

I need to write a 32 bit adder in MIPS without using the Add command and a divider as well.

What are the benefits of micro programmed control, a. What are the benefits...

a. What are the benefits of hardwired and micro programmed control? b. Sketch neat diagram of single bus organization of CPU showing ALU, all types of registers and the data pat

Explain the working of a 3-bit D/A converter, With the help of R-2R binary ...

With the help of R-2R binary network, explain the working of a 3-bit D/A converter and derive an expression for the output voltage. Ans: We see a 3-bit R-2R ladder D/A netwo

Address - operand data types, Q. Address - operand data types? A...

Q. Address - operand data types? Addresses : Operands residing in memory are specified by their memory address while operands residing in registers are specified by a re

Propositional inference rules - artificial intelligence, Propositional Infe...

Propositional Inference Rules -Artificial intelligence : Equivalence rules are specifically useful because of the vice-versa aspect,that means we can discover forwards andbackw

Explain the difference between fixed and standard effect, Question: (a)...

Question: (a) There are several camera angles that can be used to make a sequence more interesting for a video production project. Explain clearly, using diagrams where appro

How physical addressing is performed in wan, How physical addressing is per...

How physical addressing is performed in WAN?  WAN networks operate as similar to a LAN. All WAN technology describes the specific frame format a computer uses while sending an

What a header script can specify in cgi, A header in CGI script can specify...

A header in CGI script can specify? A header into CGI script can give format of document and New location of perticular the document.

Programming languages array operations, Q. Programming languages array oper...

Q. Programming languages array operations? In programming languages array operations are written in compact form which frequently makes programs more understandable. Conside

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