How to get int array size in C

2 Answers

0 votes
#include <stdio.h>

int main()
{
    int arr[5];

    printf("%d\n", *(&arr + 1) - arr);

    printf("%d\n", sizeof(arr)/sizeof(arr[0]));

    return 0;
}


          
/*
run:
       
5
5

*/

 



answered Dec 25, 2020 by avibootz
0 votes
#include <stdio.h>

int main()
{
    int arr[] = {4, 9, 0, 1};

    printf("%d\n", *(&arr + 1) - arr);

    printf("%d\n", sizeof(arr)/sizeof(arr[0]));

    return 0;
}


          
/*
run:
       
4
4

*/

 



answered Dec 25, 2020 by avibootz

Related questions

3 answers 175 views
1 answer 193 views
1 answer 170 views
2 answers 198 views
1 answer 285 views
1 answer 210 views
210 views asked Aug 23, 2016 by avibootz
2 answers 191 views
...