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

New execution of listpermutations, Update the permutation algorithm from th...

Update the permutation algorithm from the text to obtainthe correct list of permutations even if the string haves repeated letters. For example, if you call ListPermutations on the

Extjs, tell some thing about htmleditor in extjs whether it contains attach...

tell some thing about htmleditor in extjs whether it contains attachment button or not

By which companding helps in reducing signal, Companding helps in reducing ...

Companding helps in reducing with respect to signal:  (A) Interference                    (B) Signal overloading (C) Non linearity                 (D) Quantization noise

What is java awt, An AWT stands for Abstract Window Toolkit. AWT handles pr...

An AWT stands for Abstract Window Toolkit. AWT handles programmers to develop Java applications with GUI components, like windows, and buttons. The Java Virtual Machine (JVM) is re

What is the efficient data structure used in rdbms, In RDBMS, what is the e...

In RDBMS, what is the efficient data structure used in the internal storage representation? B+ tree. Because in B+ tree, all the data is kept only in leaf nodes, that makes sea

We declare a table control in the abap/4 program, How can we declare a tabl...

How can we declare a table control in the ABAP/4 program? Using the syntax controls type tableview using screen .

Differentiate aggregation and containment, Aggregation is the relationship ...

Aggregation is the relationship among the whole and a part. We can add/subtract some properties in the part (slave) side. It won't affect the entire part. Best example is Car,

Basic elements of assembly language, Basic elements of  Assembly language:...

Basic elements of  Assembly language: Any Assembly language which consists 3 types of instruction statements that are used to define the program operations: Data secti

Mutation - canonical genetic algorithm, Mutation: However it may appea...

Mutation: However it may appear that the above recombinations are a little arbitrary that especially as points defining whether crossover and inversion occur are chosen random

RS232C schematic diagram, Can someone provide me a scehmatic diagram of RS2...

Can someone provide me a scehmatic diagram of RS232C with explanation?

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