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

C++, minimum self program

minimum self program

Fundamental components of a CPU, Q. Fundamental components of a CPU? Th...

Q. Fundamental components of a CPU? The two fundamental components of a CPU are control unit and arithmetic and logic unit. The control unit of CPU selects and interprets progr

Define about exe programs, Q. Define about EXE Programs? An EXE program...

Q. Define about EXE Programs? An EXE program is stored on disk with extension .exe. EXE programs are longer than COM programs as every EXE program is related with an EXE header

Define user space, Define user space? The system space is divided from ...

Define user space? The system space is divided from virtual address space in which the user application programs reside. The letter space is known as user space.

Other equivalences, Equivalences: In this following miscellaneous equi...

Equivalences: In this following miscellaneous equivalence rules are often useful during rewriting sessions. So there the first two allow us to completely get rid of implicatio

What are the disadvantages of a vpn implementation, What are the Disadvanta...

What are the Disadvantages of a VPN implementation The greatest disadvantage of a VPN implementation is its non-flexibility to accept unknown locations. VPN works extremely wel

Develop inventory management system and time-tabling systems, Problem: ...

Problem: Develop three sub-systems namely Staff Profiling System, Inventory Management System and Time-tabling systems. (a) Show about any three design patterns you have us

Explain about the links and association, Links and Association Links a...

Links and Association Links and associations are the basic means used for establishing relationships among objects and classes of the system. In the next subsection we will di

Explain functions of direct memory access, Q. Explain functions of direct m...

Q. Explain functions of direct memory access? Though CPU intervention in DMA is minimised however it should use path between interfaces that is system bus. So DMA involves an e

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