Passare il char * direttamente su printf

#include  char s[]="sfksfls\n"; void main() { printf(s); } 

Perché può funzionare? Ho appena inserito il puntatore char in printf

Una stringa letterale in C è un puntatore a const char . printf accetta un puntatore a const char (più un elenco opzionale di argomenti aggiuntivi). Passarlo direttamente o attraverso una variabile non fa differenza, un puntatore è un puntatore, è solo un numero.