SW500010 Microchip Technology, SW500010 Datasheet - Page 83

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
C Language Features
A RAM pointer to an eeprom int:
EEPROM access is described in further detail in section 3.2.5.2.
3.3.12 Pointer Types
There are two basic pointer types supported by HI-TECH C PRO for the PIC10/12/16 MCU Family:
data pointers and function pointers. Data pointers hold the address of variables which can be read,
and possible written, indirectly by the program. Function pointers hold the address of an executable
routine which can be called indirectly via the pointer.
lowing the code generator to set an appropriate size and format for the addresses the pointer will
hold. Pro version compilers use sophisticated algorithms to track the assignment of addresses to
data pointers, and, as a result, many of these qualifiers no longer need to be used, and the size of the
pointer is optimal for the its intended usage.
3.3.12.1 Combining Type Qualifiers and Pointers
Pointers can be qualified like any other C object, but care must be taken when doing so as there are
two quantities associated with pointers. The first is the actual pointer itself, which is treated like
any ordinary C variable and has memory reserved for it. The second is the target that the pointer
references, or to which the pointer points. The general form of a pointer definition looks like the
following.
Any qualifiers to the right of the * (i.e. next to the pointer’s name) relate to the pointer variable
itself. The type and any qualifiers to the left of the * relate to the pointer’s targets.
Typically qualifiers are used with pointer definitions to customise the scope of the pointer, al-
It is helpful to first review the ANSI standard conventions for definitions of pointer types.
eeprom int * nptr;
target_type_&_qualifiers * pointer’s_qualifiers pointer’s_name;
T
E
using the volatile qualifier. The fields in the definitions have been highlighted with
spacing:
volatile int *
int
UT RIAL
XAMPLE OF POINTER QUALIFIERS
* volatile ivp ;
vip ;
Here are three examples of pointer definitions
Supported Data Types and Variables
83

Related parts for SW500010