A char p = %d
; The variable p is declared as an array of characters and initialized with string %d. p = c; Here, we overwrite the second element of array p by c. So array p becomes %c. printf(p, 65); becomes printf(%c, 65); Therefore it prints the ASCII value of 65. The output is A.