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

Presentation of the report, This will be based on presentation of the repor...

This will be based on presentation of the report, complexity of the task, degree of completion and uniqueness of your problem.  As a part of this question, you should also inclu

the entire pcd division, Will executing  SAP R/3 across the entire PCD div...

Will executing  SAP R/3 across the entire PCD division give the division with a competitive benefit?  Clarify  your answer carefully.

Find the responses when a computer broadcast an arp reqqest, How many respo...

How many responses does a computer expect to receive when it broadcast an ARP request? Why? An ARP (Address Resolution Protocol) request message is put in a hardware frame and

What is vector processing, What is vector processing?  There is ...

What is vector processing?  There is a class of computational problems that are beyond the capabilities of a conventional computer. These problems are characterized by t

Explain what is meant by a bus, Question: (a) Comment on the general s...

Question: (a) Comment on the general structure of the IAS Computer, illustrate your answer using a diagram. (b) (i) Define CPU time. (a) (ii) A program runs in 10

Cell array variable , a)   Make a cell array variable that would kept for a...

a)   Make a cell array variable that would kept for a student his or her name, university id number, and GPA.  Print this information. b) Make a structure variable that would kept

C programming, A palindrome is a string that reads the same from both the e...

A palindrome is a string that reads the same from both the ends. Given a string S convert it to a palindrome by doing character replacement. Your task is to convert S to palindrome

Illustration to demonstrate design of sequential circuits, Q. Illustration ...

Q. Illustration to demonstrate design of sequential circuits? Let us take an illustration to demonstrate above process. Suppose we want to design 2-bit binary counter employing

Example application - canonical genetic algorithm, Example Application: ...

Example Application: There are many fantastic applications of genetic algorithms. Conceivably my favorite is their usage in evaluating Jazz melodies done as part of a PhD proj

Explain about multiple program multiple data, Q. Explain about Multiple Pro...

Q. Explain about Multiple Program Multiple Data? Like SPMD, MPMD is in fact a 'high level' programming model that can be built on any combination of previously described parall

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