Quality RTOS & Embedded Software

 Real time embedded FreeRTOS RSS feed 
Quick Start Supported MCUs PDF Books Trace Tools Ecosystem


Static Variables in functions

Posted by michaeln32 on August 7, 2016

Hi If i deine varialbe as 'Static' inside a function is it in the global scope or in the stack ? For example:

void func(void) { static int i = 0;


Static Variables in functions

Posted by rtel on August 7, 2016

This is a C question, not a FreeRTOS question.

...and the answer is neither....

as you show it it is a function scope static. That means it retains its value between calls to the function, so it cannot be on the stack.

It also means the function is not thread safe, as all tasks that call the function will use the same copy of the variable.

[ Back to the top ]    [ About FreeRTOS ]    [ Sitemap ]    [ ]

Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.

Latest News

Meet us at Embedded World. Hall 3A-525.

Hear from Richard Barry at Embedded World. Feb 28, 16:00, Hall 4-428.

Video: Watch James Gosling & Richard Barry at re:Invent, Las Vegas 2017.

FreeRTOS kernel V10.0.1 is available for immediate download. Now MIT licensed.

FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

IAR Partner

Microchip Premier RTOS Partner

RTOS partner of NXP for all NXP ARM microcontrollers

STMicro RTOS partner supporting ARM7, ARM Cortex-M3, ARM Cortex-M4 and ARM Cortex-M0

Texas Instruments MCU Developer Network RTOS partner for ARM and MSP430 microcontrollers

OpenRTOS and SafeRTOS