Define external variable declaration, Computer Engineering

Assignment Help:

Summarize the distinction between an external variable definition and an external variable declaration.

When we have ''declared'' a variable, we have meant that we have told the compiler about the variable; i.e. its type and its name, as well as allocated a memory cell for the variable (either locally or globally). This latter action of the compiler, allocation of storage, is more properly called the definition of the variable. The stricter definition of declaration is simply to describe information ''about'' the variable.  For automatic and register variables, there is no difference between definition and declaration. The process of declaring an automatic or a register variable defines the variable name and allocates appropriate memory. However, for external variables, these two operations may occur independently. This is important because memory for a variable must be allocated only once, to ensure that access to the variable always refers to the same cell.

If an external variable is to be used in a file other than the one in which it is defined, a mechanism is needed to ''connect'' such a use with the uniquely defined external variable cell allocated for it. This process of connecting the references of the same external variable in different files, is called resolving the references.

External  variables  may  be  defined  and  declared  with  a  declaration  statement outside any function, with no storage class specifier. Such a declaration allocates memory for the variable. A declaration statement may also be used to simply declare a variable name with the extern storage class specifier at the beginning of the declaration. Such a declaration specifies that the variable is defined elsewhere, i.e. memory for this variable is allocated in another file. Thus, access to an external variable in a file other than the one in which it is defined is possible if it is declared with the keyword extern; no new memory is allocated. Such a  declaration tells  the compiler  that  the  variable  is  defined  elsewhere,  and  the code  is compiled with the external variable left unresolved. The reference to the external variable is resolved during the linking process

 


Related Discussions:- Define external variable declaration

Define overflow, Define Overflow.  An overflow is a problem in digital ...

Define Overflow.  An overflow is a problem in digital computer due to the width of registers is finite. A result that contains n+ 1 bit cannot be accommodated in a register wit

Define micro operation, Define Micro operation. The operations implemen...

Define Micro operation. The operations implemented on data stored in the registers are called Micro operation. A microperation is an elementary operation performed on the infor

Facsimile , FACSIMILE : This is often known as 'fax' and it represents the...

FACSIMILE : This is often known as 'fax' and it represents the interface between reprographic and computer technology. By using fax, the contents of a sheet of paper (text or illu

Obtain 1''s and 2''s complement, Obtain 1's and 2's complement of 1010 usin...

Obtain 1's and 2's complement of 1010 using only four-digit representation. Solution: 1's complement: 1's complement of 1010 is  Please note that wherever you ha

What are the concerns for growth of e-commerce in india, What are the conce...

What are the concerns for growth of e-commerce in India?  Government as Facilitator for the growth of e-commerce has taken certain steps: Promotion of competitive teleco

Megaflops, Speed in scientific computing is measured in megaflops, gigaflop...

Speed in scientific computing is measured in megaflops, gigaflops, teraflops and petaflops. A megaflop is 10 6 floating point arithmetic operations (+, -, *, /) in one second What

What is the size of the variant data type, The Variant data type has a nume...

The Variant data type has a numeric storage size of 16 bytes and can have data up to the range of a Decimal, or a character storage size of 22 bytes (plus string length),and can ke

Explain neural networks, A neural network can be definite as a model of rea...

A neural network can be definite as a model of reasoning based on the human brain. The human brain incorporates nearly 10 billion neurons and 60 trillion connections, Synapses amon

Interrupt - driven input-output, Q. Interrupt - Driven Input-output? Pr...

Q. Interrupt - Driven Input-output? Problem with programmed I/O is that processor has to wait a long time for I/O interface to see whether a device is free or waits until compl

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