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

What is instruction cycle, What is Instruction Cycle The simplest model...

What is Instruction Cycle The simplest model of instruction processing can be of two steps. The CPU reads /fetches instructions (codes) from memory one at a time and executes i

Explain about the biometrics, Explain about the Biometrics  This inclu...

Explain about the Biometrics  This includes obtaining data and identifying characteristics automatically in security systems e.g. use of palm prints, finger prints, facial ima

What is the last entry in all bdc tables, What is the last entry in all BDC...

What is the last entry in all BDC tables? In all BDC tables the last entry is to save the data by using the field name BDC_OKCODE and a field value of '/11'.

Poor human support - obstacle to information system, Poor human support - O...

Poor human support - Obstacle to Information System The full utility of an IS will only be realised if it is properly supported by the users. Technology is never a solution in

Find out the correction to be applied in decimal adder, The correction to b...

The correction to be applied in decimal adder to the generated sum is ? Ans. 00110 is the generated sum when the correction to be applied in decimal adder. While the 4 bit su

Design the communication protocol, Design, write, and implement distributed...

Design, write, and implement distributed networked application using Java Design the communication protocol (message format and exchange procedure) that your application will re

Kirchoff''s laws, i want to make an assignment about kirchoff''s law

i want to make an assignment about kirchoff''s law

Describe menu in dreamweaver, File Menu: Under it there are New, Save, Sav...

File Menu: Under it there are New, Save, Save as, Save as template, Import, Export, Preview in browser etc. options. Edit Menu: In this menu there are Cut, Copy, Paste, Undo,

Architecture, write a program in assembly language using emu8086 so that th...

write a program in assembly language using emu8086 so that the input string can contain both lower and upper case letters and any other character and the output will be the reverse

Dynamic address translation - computer architecture, Dynamic address transl...

Dynamic address translation :  If, when executing an instruction, a CPU fetches an instruction located at a specific virtual address, or fetches data from a particular virtual

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