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

Explain about hexadecimal numbers system, Q. Explain about Hexadecimal Numb...

Q. Explain about Hexadecimal Numbers system? Hexadecimal system has 16 digits that are represented as 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F. A number (F2) H is equivalent to

The concept of process-parallel computing, The Concept of Process Infor...

The Concept of Process Informally, a method is a program in execution, behind the program has been loaded in the main memory. However, a method is more than just a program code

What is meant by maskable interrupts, A interrupt that can be turned off by...

A interrupt that can be turned off by the programmer is called as Maskable interrupt.

Interrupt signal interconnection network (isin), Interrupt Signal Interconn...

Interrupt Signal Interconnection Network (ISIN): When a processor wish to transmit an interruption to another processor, then this interrupt initially goes to ISIN, by which it

Compare hypertext versus hypermedia, Compare hypertext versus hypermedia.  ...

Compare hypertext versus hypermedia.  Hypertext is basically similar as regular text - it can be stored, read, searched, or edited - with a significant except ion: hyper text h

What is central processing unit, What is Central Processing Unit Centra...

What is Central Processing Unit Central Processing Unit (CPU) performs all the arithmetic and logical calculations in a computer. The CPU is said to be the brain of the compute

Write an applet that display the directory holding html file, Write an appl...

Write an applet that display the directory holding the HTML file that started the applet and the directory from which, applet class file was loaded. An applet is here given bel

Determine reduced boolean equation and the karnaugh map, Determine reduced ...

Determine reduced Boolean equation and the Karnaugh Map? Illustration : Determine reduced Boolean equation and the Karnaugh Map for the truth table shown below:

Variance of predictions is expected to decrease, Suppose the random sample ...

Suppose the random sample used for each tree in the previous random forest is decreased from 1000 rows to 500 rows. Circle ALL that are true for the ensemble classifier. a) Vari

Why is green screen more popular for compositing, Question: (a) Explain...

Question: (a) Explain clearly, from pre-production to post production how you would carry out the scene with multi-camera. (b) What are the there main aspects that should be

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