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

Associative memory organisations, Associative Memory Organisations The ...

Associative Memory Organisations The associative memory is organised in w words with b bits per word. In w x b array, every bit is known a cell. Each cell is made up of a flip-

Approach to reasoning - first-order logic, Approach to reasoning - first-or...

Approach to reasoning - first-order logic: The formal approach to reasoning has bigger return and disadvantages. In generally we notice, if a computer program has proved somet

Higher order predicate logic, Higher Order Predicate Logic : In the v...

Higher Order Predicate Logic : In the very first order predicate logic, we are only allowed to quantify over objects. If we are considered to allow ourselves to quantify over

State about the object oriented analysis, State about the Object oriented a...

State about the Object oriented analysis Object oriented analysis (OOA) is concerned with developing software engineering specifications and requirements that expressed as a s

Explain inheritance, Can you explain what inheritance is and an example of ...

Can you explain what inheritance is and an example of when you might use it? The process of deriving a new class from an existing class is known as Inheritance. The old class i

What are the benefits of web-based spreadsheets, What are the Benefits of W...

What are the Benefits of Web-Based Spreadsheets? The spreadsheets can be accessed from any Internet-connected computer, not just the computer originally formed the spreadsh

State any three properties of the neutrons, Q. State any three properties o...

Q. State any three properties of the neutrons. (i) A Neutrons are the constituent particles of all nuclei except hydrogen. (ii) As they are neutral particles they aren't de

The color and plot style, Write a script that will make x and y vectors.  T...

Write a script that will make x and y vectors.  Then, it will ask the user for a color ('red', 'blue', or 'green') and for a plot style ('o', '*').  It will then make a string "pst

Will case infer priority register if yes how give an example, Will case inf...

Will case infer priority register if yes how give an example? Yes case can infer priority register depending on coding style reg r; // Priority encoded mux, always @

Which techniques are utilized to gain on the number pairs, Which techniques...

Which techniques are utilized to gain on the number pairs and also explain how it helps in connecting number of subscribers. In rural areas, subscribers are usually dispersed.

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