edited by
449 views
0 votes
0 votes

Can someone explain this one ?

What is the output of the following program?

main()
{
    static char *s[] = {
        "ice",
        "green",
        "cone",
        "please",
    };
    static char **ptr[]= {s+3,s+2,s+1,s};
    char ***p=ptr;
    printf("\n%x",**++p);
    printf("\n%s",*--*++p+3);
    printf("\n%s",*p[-2]+3);
    printf("\n%s",p[-1][-1]+1);
}
edited by

Please log in or register to answer this question.

Related questions

0 votes
0 votes
1 answer
1
Debargha Mitra Roy asked 2 days ago
47 views
#include <stdio.h int main() { int a[3] = {1, 3, 5, 7, 9, 11}; int *ptr = a[0]; ptr += sizeof(int); printf("%d", *ptr); return 0; }(Assume size of int to be $2$ bytes.)T...
0 votes
0 votes
2 answers
3
Debargha Mitra Roy asked Apr 10
103 views
What is the output of the below code?#include <stdio.h void main() { static int var = 5; printf("%d ", var ); if (var) main(); }a. 1 2 3 4 5b. 1c. 5 4 3 2 1d. Error
1 votes
1 votes
1 answer
4
SSR17 asked Feb 29
252 views
#include <stdio.h int main() { int i = -1; int x = (unsigned char)i; printf("%d", x); return 0; }output is 255 , but please explain how