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

No class can derive, Make a console application. Add class 'Account' having...

Make a console application. Add class 'Account' having variables as num (integer) name (String), bal (double), ac_code (byte). Describe four different constructors to initialize th

What are the differences between simulation and synthesis, What are the dif...

What are the differences between SIMULATION and SYNTHESIS Simulation synthesis Simulation is used to verify functionality of the circuit.. a) Functional Simulation:stud

Embedded system design using c, W To date we have discussed elementary high...

W To date we have discussed elementary high level language programming and low level assembler programming, one of the benefits of C is the integration of both , this requires a re

Reduced instruction set computer architecture, The goal of computer archite...

The goal of computer architects is to design computers that are cheaper and more powerful than their predecessors. A cheaper computer has: Low hardware manufacturing cost.

Define process, Define Process Process is a program in execution; proc...

Define Process Process is a program in execution; process execution should progress in sequential fashion. A process involves: a) Program counter  b) Stack c) Data se

Illustrate simple ALU organisation, Q. Illustrate Simple ALU Organisation? ...

Q. Illustrate Simple ALU Organisation? An ALU comprises circuits which perform data processing micro-operations. Though how are these ALU circuits used in conjunction of other

Search mechanisms in prolog - artificial intelligence, Search mechanisms in...

Search mechanisms in Prolog We can utilize this simple Prolog program to describe how Prolog searches: president(X) :- first_name(X, georgedubya), second_name(X, bush). p

Example of variables and quantifiers - first-order logic, Example of Variab...

Example of Variables and quantifiers: We should have started with something such which reflects the fact that we're really talking for some meal at the Red Lion, neverthe

What is electronic payment system, What is electronic payment system? E...

What is electronic payment system? Electronic payment systems are alternative cash credit payment methods using various electronic technologies to pay for products and services

What are inertial and non-inertial frame of references, Q. What are inertia...

Q. What are inertial and non-inertial frame of references? (i) Inertial (or) unaccelerated frames: Bodies in this frame follow Newton's law of intertia as well as othe

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