1 votes 1 votes Consider the following C program segment: #include <stdio.h> main() { static char*s[] = {"black","white","yellow","violet"}; char **ptr[]={s+3,s+2,s+1,s},***p; p=ptr; ++P; printf("%s",*--*++p+3); } What will be printed by the program? et ite ck yellow Programming in C programming-in-c + – sourav. asked Jan 29, 2016 sourav. 1.3k views answer comment Share Follow See all 0 reply Please log in or register to add a comment.
Best answer 3 votes 3 votes ++ p means p points to S+2 *(--(*(++P)))+3++P : address of S+1 *(++P) : S+1 --(*(++P)) : S *(--(*(++P))) : Address of 1st element of array i.e. Address of 'b'*(--(*(++P))) + 3 : address of 'c' now Print string starting from 'c' i.e. 'ck' Digvijay Pandey answered Jan 29, 2016 • selected Jan 29, 2016 by sourav. Digvijay Pandey comment Share Follow See all 0 reply Please log in or register to add a comment.