Jump to main content
MPLAB® XC32 C/C++ Compiler User's Guide for PIC32M MCUs
MPLAB® XC32 C/C++ Compiler User's Guide for PIC32M MCUs
  1. Home
  2. 3 How To's
  3. 3.3 Writing Source Code
  4. 3.3.3 Memory Allocation
  • Notice to Development Tools Customers
  • 1 Preface
  • 2 Compiler Overview
  • 3 How To's
    • 3.1 Installing and Activating the Compiler
    • 3.2 Invoking the Compiler
    • 3.3 Writing Source Code
      • 3.3.1 C Language Specifics
      • 3.3.2 Device-Specific Features
      • 3.3.3 Memory Allocation
        • 3.3.3.1 How Do I Position Variables at an Address I Nominate?
        • 3.3.3.2 How Do I Position Functions at an Address I Nominate?
        • 3.3.3.3 How Do I Place Variables in Program Memory?
        • 3.3.3.4 How Do I Stop the Compiler From Using Certain Memory Locations?
      • 3.3.4 Variables
      • 3.3.5 Functions
      • 3.3.6 Interrupts
      • 3.3.7 Assembly Code
    • 3.4 Getting My Application To Do What I Want
    • 3.5 Understanding the Compilation Process
    • 3.6 Fixing Code That Does Not Work
  • 4 XC32 Toolchain and MPLAB X IDE
  • 5 Command-line Driver
  • 6 ANSI C Standard Issues
  • 7 Device-Related Features
  • 8 Code Coverage
  • 9 Supported Data Types and Variables
  • 10 Memory Allocation and Access
  • 11 Floating-point Support
  • 12 Fixed-Point Arithmetic Support
  • 13 Operators and Statements
  • 14 Register Usage
  • 15 Stack
  • 16 Functions
  • 17 Interrupts
  • 18 Main, Runtime Start-up and Reset
  • 19 Library Routines
  • 20 Mixing C/C++ and Assembly Language
  • 21 Optimizations
  • 22 Preprocessing
  • 23 Linking Programs
  • 24 Embedded Compiler Compatibility Mode
  • 25 Common C Interface
  • 26 C Implementation-Defined Behavior
  • 27 C++ Implementation-Defined Behavior
  • 28 Deprecated Features
  • 29 Built-In Functions
  • 30 Built-In DSP Functions
  • 31 PIC32 DSP Library
  • 32 PIC32 Debug-Support Library
  • 33 DSP Wrapper Functions
  • 34 ASCII Character Set
  • 35 Document Revision History
  • The Microchip Website
  • Product Change Notification Service
  • Customer Support
  • Product Identification System
  • Microchip Devices Code Protection Feature
  • Legal Notice
  • Trademarks
  • Quality Management System
  • Worldwide Sales and Service

3.3.3 Memory Allocation

Here are questions relating to how your source code affects memory allocation.

  • 3.3.3.1 How Do I Position Variables at an Address I Nominate?
  • 3.3.3.2 How Do I Position Functions at an Address I Nominate?
  • 3.3.3.3 How Do I Place Variables in Program Memory?
  • 3.3.3.4 How Do I Stop the Compiler From Using Certain Memory Locations?
  • 3.5.14 Why Are Some Objects Positioned Into Memory That I Reserved?

The online versions of the documents are provided as a courtesy. Verify all content and data in the device’s PDF documentation found on the device product page.

Microchip Facebook
Microchip LinkedIn
Microchip Twitter
Microchip YouTube
Microchip Instagram
Microchip Weibo
Microchip Blog
Contact |
Legal |
Privacy Policy |
Cookies |
Careers

Stay on the leading edge with our blog

MicroSolutions

© Copyright 1998-2022 Microchip Technology Inc. All rights reserved.