How define static local and global variable in C

2 Answers

0 votes
#include <stdio.h>

static int sg_var;

void function(void) {
    static int counter = 0;
    
    printf("counter = %d\n", counter++);
}
  
int main(void)
{
    function();
    function();
    function();
    
    sg_var = 199;
    
    printf("sg_var = %d\n", sg_var++);
    printf("sg_var = %d\n", sg_var++);
    printf("sg_var = %d\n", sg_var++);
    
    function();
    function();
    function();
      
    return 0;
}
   
    
    
    
/*
run:
    
counter = 0
counter = 1
counter = 2
sg_var = 199
sg_var = 200
sg_var = 201
counter = 3
counter = 4
counter = 5
  
*/

 



answered Oct 20, 2023 by avibootz
0 votes
#include <stdio.h>

#define local_variable static
#define global_variable static

global_variable int sg_var;

void function(void) {
    local_variable int counter = 0;

    printf("counter = %d\n", counter++);
}

int main(void)
{
    function();
    function();
    function();

    sg_var = 199;

    printf("sg_var = %d\n", sg_var++);
    printf("sg_var = %d\n", sg_var++);
    printf("sg_var = %d\n", sg_var++);

    function();
    function();
    function();

    return 0;
}




/*
run:

counter = 0
counter = 1
counter = 2
sg_var = 199
sg_var = 200
sg_var = 201
counter = 3
counter = 4
counter = 5

*/

 



answered Oct 20, 2023 by avibootz

Related questions

1 answer 253 views
1 answer 204 views
204 views asked Jun 12, 2015 by avibootz
3 answers 323 views
1 answer 236 views
2 answers 183 views
...