Can't is less formal than cannot. That's the only difference.
–
RobustoAug 20 '12 at 14:27

3

I would personally insist on using cannot where the emphasis is on 'not': using can't in such a case would kind of drown out the more significant 'not' part. @Robusto I suspect it is not that simple (actually, hope not). Let's wait and see what the others have to say.
–
KrisAug 20 '12 at 14:34

1 Answer
1

Grammatically, you can use can't instead of can not or cannot in the majority of circumstances. There is an exception. In wh-movement, the contraction should not be expanded unless you also change the word order:

Why can't I have some bacon? //OKWhy cannot I have some bacon? //not OK, archaicWhy can I not have some bacon? //OK again, although formal

Stylistically, the choice between can't and cannot is more complex. Generally, people use can't in speech and informal writing, and cannot or can not in formal writing or very formal speech. Also (as @Kris points out in a comment), cannot might be used when you need to carefully distinguish it from can't in speech.

BTW, the OED says that the one-word construct cannot is "the ordinary modern way of writing can not" with a space between it, which apparently is archaic, or non-modern, or some such.
–
tchristAug 20 '12 at 19:22