How to allocate big memory size in C

1 Answer

0 votes
#include <stdio.h>
#include <stdint.h>
#include <stdlib.h>

int main(void) {

    uint32_t* p;
    uint32_t size = 2453189042;

    // index = from 0 to 2453189042

    p = malloc((size + 1) * sizeof *p);
    if (p == NULL) {
        printf("not enough memory");
        return 1;
    }


    p[size] = 99999;

    printf("%d", p[size]);

    free(p);

    return 0;
}




/*
run:

99999

*/

 



answered Nov 30, 2023 by avibootz

Related questions

1 answer 267 views
2 answers 160 views
1 answer 100 views
100 views asked Jan 31, 2023 by avibootz
1 answer 188 views
1 answer 147 views
147 views asked May 4, 2021 by avibootz
1 answer 159 views
...