int main()
{
    int arr[5]= {55}, i=0;
    while (i<5)
    {
        arr[i]= i++;
    }
    for(i=0; i<5; i++)
        printf("%d, ", arr[i]);
    return 0;
}
why is the output ( 55,0,1,2,3) Not ( 0,1,2,3,4)
Ps: I'm using GCC compiler
int main()
{
    int arr[5]= {55}, i=0;
    while (i<5)
    {
        arr[i]= i++;
    }
    for(i=0; i<5; i++)
        printf("%d, ", arr[i]);
    return 0;
}
why is the output ( 55,0,1,2,3) Not ( 0,1,2,3,4)
Ps: I'm using GCC compiler
 
    
     
    
    This is undefined behavior.
Clang actually warns about it
warning: unsequenced modification and access to 'i' [-Wunsequenced]
arr[i]= i++;
   ~    ^
