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

Should validation occur server-side or client-side, Should validation (did ...

Should validation (did the user enter a real date) occur server-side or client-side? Why? Validation will be done in both sides i.e., at the server side and client side. Ser

Explain about encoding technique used in bitmaps indexes, Bitmaps commonly ...

Bitmaps commonly use one bitmap for each single distinct value. Number of bitmaps used can be decreased by opting for a dissimilar type of encoding. Space can be optimized but when

Function of in network access layer in tcp/ip protocol stack, What is the f...

What is the function of in network access layer in TCP/IP protocol stack? Function of Network Access Layer: The network access layer is the lowest layer within Internet

How can one decide this decimal position, Q. How can one decide this decima...

Q. How can one decide this decimal position? Decimal position can be signified by a position between flip-flops (storage cells in computer). However how can one decide this dec

Ds, explain about relations

explain about relations

Explain memory write operation, Q. Explain Memory Write operation? Memo...

Q. Explain Memory Write operation? Memory write operation transfers content of a data register to a memory word M selected by the address. Presume that data of register R1 is t

Explain the term granularity, Granularity In 'Parallel computing', Gran...

Granularity In 'Parallel computing', Granularity can be defined as a qualitative assess of the ratio of computation to communication. 1) Coarse Granularity - relatively hug

Define the uniform memory access model (uma), Normal 0 false ...

Normal 0 false false false EN-US X-NONE X-NONE

Commutativity of connectives, Commutativity of Connectives : In this y...

Commutativity of Connectives : In this you will be aware of the fact that some arithmetic operators that have a property which it doesn't matter that way around you give the o

Define the vbscript basics, VBScript is an easy and powerful to learn tool ...

VBScript is an easy and powerful to learn tool which can be used to add interaction to your Web pages. Web browser receives scripts along with rest of the Web document. Browser par

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