Gli array non sono puntatori, sono tipi distinti, semplicemente in molte occasioni decadono in puntatori.

Gli string literals non sono praticamente mai allocati sullo stack, ma in un'area di memoria generalmente di sola lettura, in genere corrispondente ad una particolare sezione dell'eseguibile mappata in memoria.