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

Discuss in detail table management techniques, Discuss in detail Table mana...

Discuss in detail Table management Techniques? An Assembler uses the subsequent tables: OPTAB: Operation Code Table consists of mnemonic operation code and machine langua

What is assembly, What is assembly Assemblies are the building blocks o...

What is assembly Assemblies are the building blocks of .NET Framework applications; they variety the fundamental unit of deployment, version control, reuse, activation scoping,

Difference between char a[] = "string", What is the difference between char...

What is the difference between char a[] = "string"; and char *p = "string";? Ans) In the first case 6 bytes are assigned to the variable a which is fixed, where as in the secon

What is downcasting in programming, Downcasting concept is the casting from...

Downcasting concept is the casting from a general to a more particular type, i.e. casting down the hierarchy in programming

State of the register, What is the state of the register in Figure  after e...

What is the state of the register in Figure  after every clock pulse if it begins in the 101001111000 state?

Instruction pipeline-level of processing, Classification according to level...

Classification according to level of processing According to this classification, computer operations are classified as arithmetic operations and instruction implementation. Ne

What is delayed branching, What is delayed branching? A method called d...

What is delayed branching? A method called delayed branching can minimize the penalty incurred as a result of conditional branch instructions. The idea is easy. The instruction

Coa, Whats the use of coa

Whats the use of coa

Write an algorithm for deadlock detection, Write an algorithm for deadlock ...

Write an algorithm for deadlock detection. An algorithm for deadlock detection: 1. Assume that Work and Finish be vectors of length m and n, correspondingly. Initialize:

Database management subsystem, (a) Explain, using suitable examples, the fu...

(a) Explain, using suitable examples, the functions of each of the sub system mentioned in the context of a large chain of supermarkets (i) Database Management Subsystem (ii)

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