Lo único que hemos visto nuevo es el uso de los corchetes [ ] para la declaracion de arrays.
#define, directiva de preprocesador
'\0' es el carácter nulo
%p , es un especificador de conversión