I don't seem to be able to ask the right question in the title, the way I asked the question is not correct.
What I really want to know is this:
I can spend an unconfirmed output, then I can spend the output that spends that unconfirmed output, and I can spend that output, too, and so on...
My question is: how many times can I do it?
Edit: I just tried it in the testnet, I got this message:
64: too-long-mempool-chain. Is this 64 an universal number?
Edit 2: It turns out 64 is the error code. The actual number is 25.