SW500010 Microchip Technology, SW500010 Datasheet - Page 84

HI-TECH C PRO FOR PIC10/12/16

SW500010

Manufacturer Part Number
SW500010
Description
HI-TECH C PRO FOR PIC10/12/16
Manufacturer
Microchip Technology
Type
Compilerr
Series
PIC10/12/16r
Datasheets

Specifications of SW500010

Supported Families
PIC10, PIC12, PIC16
Core Architecture
PIC
Software Edition
Professional
Kit Contents
Software And Docs
Mcu Supported Families
PIC10/12/16
Tool Type
Compiler
Lead Free Status / RoHS Status
Not applicable / Not applicable
For Use With/related Products
PIC10, PIC12, PIC14, PIC16, PIC16E
Lead Free Status / Rohs Status
Lead free / RoHS Compliant
Other names
019P
778-1006
778-1006
Supported Data Types and Variables
Bare in mind that one pointer can be assigned the address of many objects, for example a pointer
that is a parameter to a function is assigned a new object address every time the function is called.
The definition of the pointer must be valid for every target address assigned.
3.3.12.2 Data Pointers
HI-TECH C PRO for the PIC10/12/16 MCU Family monitors and records all assignments of ad-
dresses to each data pointer the program defines. The size and format of the address held by each
pointer is based on this information. When more than one address is assigned to a pointer at dif-
ferent places in the code, a set of all possible targets the pointer can address is maintained. This
information is specific to each pointer defined in the program, thus two pointers with the same type
may hold addresses of different sizes and formats due to the different nature of objects they address
in the program.
84
The following pointer classifications are currently implemented:
volatile int * volatile vivp ;
The first example is a pointer called vip. It contains the address of an int objects that
are qualified volatile. The pointer itself — the variable that holds the address — is
not volatile, however the objects that are accessed when the pointer is dereferenced
is volatile. That is, the target objects accessible via the pointer may be externally
modified.
The second example is a pointer called ivp which also contains the address of int
objects. In this example, the pointer itself is volatile, that is, the address the pointer
contains may be externally modified, however the objects that can be accessed when
dereferencing the pointer are not volatile.
The last example is of a pointer called vivp which is itself qualified volatile and
which also holds the address of a volatile object.
Care must be taken when describing pointers: Is a “const pointer” a pointer that points
to const objects, or a pointer that is const itself. You can talk about “pointers to
const” and “const pointers” to help clarify the definition, but such terms may not be
universally understood.
An 8-bit pointer capable of accessing common memory and either banks 0 and 1, or banks 2
and 3;
C Language Features

Related parts for SW500010